想用python爬取网页,我的代码问题在哪
from data的内容:
我的代码如下:
from urllib import request
from urllib import parse
import json
if __name__ =="__main__":
Request_URL = 'https://dict.youdao.com/webtranslate'
Form_Data = {}
Form_Data['i'] = 'Jack'
Form_Data['type'] = 'AUTO'
Form_Data['domain'] = 0
Form_Data['keyid'] = 'webfanyi'
Form_Data['sign'] = 'c1191215dad8b77dfde93bc13d96f6fd'
Form_Data['client'] = 'fanyideskweb'
Form_Data['product'] = 'webfanyi'
Form_Data['appVersion'] = '1.0.0'
Form_Data['vendor'] = 'web'
Form_Data['pointParam'] = 'client,mysticTime,product'
Form_Data['mysticTime'] = '1677923162192'
Form_Data['keyfrom'] = 'fanyi.web'
#使用urlencode方法转换标准格式
data = parse.urlencode(Form_Data).encode('utf-8')
#传递Request对象和转换完格式的数据
response = request.urlopen(Request_URL,data)
#读取信息并解码
html = response.read().decode('utf-8')
#使用JSON
translate_results = json.loads(html)
#找到翻译结果
translate_results = translate_results['translateResult'][0][0]['tgt']
#打印翻译信息
print("翻译的结果是:%s" % translate_results)
回答如下,记得采纳一下哦!
反爬了哇,很明显sign参数应该是变化的,后面还有个时间戳参数,当然不能写死,要模拟的,sign的生成探究可能还需要js逆向。
你这个可以看我这篇博客,同一个翻译网站😎:https://guanzhu-aniu.blog.csdn.net/article/details/122888917