1. 首页
  2. Python

用 Python 抓取百度翻译内容并打造自己的翻译脚本!

“u003Cdivu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002F6c3e0005632ed1b12a62″ img_width=”1022″ img_height=”535″ alt=”用 Python 抓取百度翻译内容并打造自己的翻译脚本!” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003E英文不好一直是我的一个短板,尤其是在学习代码的阶段,经常需要查询各种错误,很是苦逼,一直就想自己做个翻译的脚本,省去打开网页的时间,但是查询之后发现网上的教程都是百度翻译改版之前的爬虫,不得已只好自己上手了!u003Cu002Fpu003Eu003Cpu003E目标:制作自己的翻译脚本u003Cu002Fpu003Eu003Cpu003Eurl: http:u002Fu002Ffanyi.baidu.comu002Fbasetransu003Cu002Fpu003Eu003Cpu003E前期准备:pycharm、python3.6u003Cu002Fpu003Eu003Cpu003E库:requests、jsonu003Cu002Fpu003Eu003Cpu003E思路:u003Cu002Fpu003Eu003Cpu003E1. 首先找到百度翻译的网页,抓到以下内容:该包内有输出文字的判断,比如输入u003Cu002Fpu003Eu003Cpu003E中文自动翻译为英文,则返回”en”,反之则返回”cn”。u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002F6ed400001c1e52f5c288″ img_width=”548″ img_height=”215″ alt=”用 Python 抓取百度翻译内容并打造自己的翻译脚本!” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003E2. 构造 post 访问 url 的 data 数据,用到 3 个参数:”query”、”from”、”to”,from 和to 参数就是你输入的内容和返回的内容的语种,我们上一步已经获取到相关的参数了,所以用个判断分别返回 to 参数即可u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp9.pstatp.comu002Flargeu002F6ed50000009178538d78″ img_width=”406″ img_height=”255″ alt=”用 Python 抓取百度翻译内容并打造自己的翻译脚本!” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003ELan 就是抓包后返回的内容,直接提取出来。u003Cu002Fpu003Eu003Cpu003E3. 然后注意,因为是访问移动端的 url,所以用到的 UA 不能是电脑的 ua 了,需要自u003Cu002Fpu003Eu003Cpu003E行查找手机端的 ua,这里提供给大家一个:u003Cu002Fpu003Eu003Cpu003E{“User-Agent”:”Mozillau002F5.0 (Linux; Android 5.1.1; Nexus 6 Buildu002FLYZ28E) AppleWebKitu002F537.36 (KHTML, like Gecko) Chromeu002F63.0.3239.84 Mobile Safariu002F537.36″}u003Cu002Fpu003Eu003Cpu003E4. 将需要翻译的内容提交后,网站返回的数据是 json 格式的内容,当翻译的文字大于 1 个时,会有每个关键字的翻译,这里也可以抓取下。u003Cu002Fpu003Eu003Cpu003E比如输入”python 学习交流群: 542110741″后返回内容:u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002F6ed5000000f245beca4a” img_width=”500″ img_height=”72″ alt=”用 Python 抓取百度翻译内容并打造自己的翻译脚本!” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003EJosn 内容如下:u003Cu002Fpu003Eu003Cblockquoteu003Eu003Cpu003E{‘errno’: 0, ‘from’: ‘zh’, ‘to’: ‘en’, ‘trans’: [{‘dst’: ‘Python learning communication group: 542110741’, ‘prefixWrap’: 0, ‘src’: ‘python 学习交流群: 542110741′,’relation’: [], ‘result’: [[0, ‘Python learning communication group: 542110741’,[‘0|32’], [], [‘0|32’], [‘0|46’]]]}], ‘dict’: [], ‘keywords’: [{‘means’: [‘巨蛇,大蟒’],’word’: ‘python’}, {‘means’: [‘study’, ‘learn’, ’emulate’, ‘learning’], ‘word’: ‘学习’},{‘means’: [‘exchange’, ‘interflow’, ‘interchange’, ‘alternating’, ‘AC (alternating current)’, ‘communion’], ‘word’: ‘交流’}]}u003Cu002Fpu003Eu003Cu002Fblockquoteu003Eu003Cpu003E我们可以分别抓取’trans’和’keywords’的值,我们所需要的内容,就在这两个值里。u003Cu002Fpu003Eu003Cpu003E好了,直接上代码和运行结果u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002F6ed5000001731ba63acb” img_width=”1083″ img_height=”436″ alt=”用 Python 抓取百度翻译内容并打造自己的翻译脚本!” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002F6c3e000565110b9ba162″ img_width=”1287″ img_height=”1325″ alt=”用 Python 抓取百度翻译内容并打造自己的翻译脚本!” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002F6c3f000464c35454484c” img_width=”461″ img_height=”87″ alt=”用 Python 抓取百度翻译内容并打造自己的翻译脚本!” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003E和翻译网站查询的一致!u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002F6c3e00056563fc30cbc9″ img_width=”450″ img_height=”450″ alt=”用 Python 抓取百度翻译内容并打造自己的翻译脚本!” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003E内容到这里就完了~如果对大家有帮助,就关注下呗u003Cu002Fpu003Eu003Cu002Fdivu003E”

原文始发于:用 Python 抓取百度翻译内容并打造自己的翻译脚本!

主题测试文章,只做测试使用。发布者:战鹰,转转请注明出处:http://www.cxybcw.com/13346.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code