欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

简易百度翻译爬虫实践 - 编码 UTF-8 - 模拟浏览器访问网页,创建文件夹并存储文本文件,命名文件为单词形式

最编程 2024-08-02 07:26:32
...

因为最近有数据需求,自己写了一个简单的小爬虫,但是这是第一版还是比较简陋,慢慢更新吧.


能够实现的功能是查询英语单词和中文单词并且能够找出读音来,希望以后学习下图形界面再去完善下,整的好看点.

屏幕快照 2017-12-06 下午10.15.22.png


代码如下:

-- coding:utf-8 --

import requests
 import os
 url= 'https://fanyi.baidu.com/v2transapi' #网址

访问网址

模拟浏览器

print("请输入你想翻译的语言,英文请输入1,中文请输入2")
 translat_Word= input()
 if(translat_Word==1):
 word = input("请输入你想翻译的英语n")
 data = {
 'from': 'en',
 'to': 'zh',
 'query': word,
 'transtype': 'realtime',
 'simple_means_flag': 3
 }
 else:
 word = input("请输入你想翻译的中文n")
 data = {
 'from': 'zh',
 'to': 'en',
 'query': word,
 'transtype': 'realtime',
 'simple_means_flag': 3
 }
response = requests.post(url, data=data)
 data = response.json()
means = data['dict_result']['simple_means']['symbols'][0]['parts']

创建文件夹

if not os.path.exists("my_%s" % word):
 os.makedirs("my_%s" % word)
 dir_name = "my_%s" % word

用一个text文件保存,文件名用单词名字

'''
 flie_handler = open('%s.txt'%word,'w',encoding='utf-8')
 for item in means:
 flie_handler.write(item['part'] + ' '.join(item['means']) +'n')
 flie_handler.close()
 with可以省略open
 '''
 mp3_url = 'https://fanyi.baidu.com/gettts?lan=en&text=%s&spd=3&source=web' %word
 mp3_response = requests.get(mp3_url)
 mp3_data = mp3_response.content #二进制 字节数据
 with open('%s/%s.mp3'%(dir_name, word), 'wb') as f:
 f.write(mp3_data)
 with open('%s/%s.txt'%(dir_name,word),'w',encoding='utf-8') as f:
 for item in means:
 f.write(item['part'] + ' '.join(item['means']) +'n')