×

新闻动态

正则表达式re写便民查询网翻译python爬虫

0x_www 0x_www 发表于2021-02-05 14:14:16 浏览360 评论0

抢沙发发表评论

正则表达式re写便民查询网翻译python爬虫


需要用到的模块:

request
urllib
re


re用于正则表达式模块

放入一个header信息

如:

header={:}


爬写方式,用到谷歌的F12,点击输入翻译抓包

QQ截图20210205142027.png



找到翻译的接口

得到地址:

https://www.woaifanyi.com/api/1.9/save/?ajaxtimestamp=1612505994032

现在需要把 fromdata装入

  1. source:

    巴黎
  2. from:

    1
  3. to:

    2




formdata={
: ,
: ,
: }




这里发现我们找到的response信息为:
[{"x_s_w_z":0,"n_r":"\u5df4\u9ece"},{"x_s_w_z":1,"f_y_y_q":3,"h_h_id":"00d467975ad55252b9b0932cdeb97541"},{"x_s_w_z":2,"n_r":"Paris<br>"}]
我们取一个n_r就可以了

写一个zhengz
格式为r'"n_r":"<.*?>"'

利用re.findall去区配

QQ截图20210205142940.png


你好


发现返回的地址是:['\\u6211\\u7231\\u4e2d\\u56fd', '\\u6211\\u7231\\u4e2d\\u56fd', 'I love China<br>']

看到信息比较乱

我们取第2个数组元素

prtint(reu[2])

QQ截图20210205143202.png




from urllib import request
import urllib
import re

header={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36"
}

url="https://www.woaifanyi.com/api/1.9/save/?ajaxtimestamp=1612504530730"



formdata={
"source": "我爱中国",
"from": "1",
"to": "2"
}

data=urllib.parse.urlencode(formdata).encode(encoding='utf-8')
res=request.Request(url,data=data,headers=header)
response=request.urlopen(res).read().decode()
zhengz=r'"n_r":"(.*?)"'
reu=re.findall(zhengz,response)
print(reu[2])