一,首先导入urllib里面的request和parse:这里导入parse主要字符转码
from urllib import request,parse
二,爬取别人的网站最好加入伪装,也就是浏览器的请求里的User-Agent,可以有效的过滤掉别人的反爬,
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.75 Safari/537.36'}
三,因为百度翻译是post请求,所以需要封装,还要对需要翻译的字体进行转码,要不会爬取不到页面
dict={'kw':'job'}#需要翻译的内容 new_name=parse.urlencode(dict)#进行转码 url='https://fanyi.baidu.com/sug'#url 连接 response=request.Request(url,headers=headers,data=bytes(new_name,encoding='utf-8'))#进行封装
四,爬取数据
text=request.urlopen(response).read().decode('utf-8')#爬取数据
五,由于数据是json格式,所以我们需要用json读取,所以导入json模块
import json
content=json.loads(text)
print(content)
结果:
自己可以格式化一下数据
有道翻译也可以爬取,多了一个随机值和md5加密,自己也可以找规律进行爬取的,