码农心 发表于 2022-5-30 21:03:27

反爬虫

import urllib.request
import urllib.parse

url = "https://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule"
data = {}
data["i"] = "I love FishC.com!"
data["from"] = "AUTO"
data["to"] = "AUTO"
data["smartresult"] = "dict"
data["client"] = "fanyideskweb"
data["salt"] = "16539143637305"
data["sign"] = "3019817f3e54cab29e149d53e636607a"
data["lts"] = "1653914363730"
data["bv"] = "484152497a5f7dd5d5d73870f3ae7b45"
data["doctype"] = "json"
data["version"] = "2.1"
data["keyfrom"] = "fanyi.web"
data["action"] = "FY_BY_CLICKBUTTION"
data = urllib.parse.urlencode(data).encode("utf-8")

response = urllib.request.urlopen(url,data)
html = response.read().decode("utf-8")

print(html)




运行后出现

{"errorCode":50}

百度后说是有道的反爬虫机制,但网上的教程完全看不懂啊,那么请问:
如何能顺利得到自己想得到的???

isdkz 发表于 2022-5-31 01:07:18

本帖最后由 isdkz 于 2022-5-31 01:09 编辑

import urllib.request
import urllib.parse

url = "https://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule"      # 改了这里
data = {}
data["i"] = "I love FishC.com!"
data["from"] = "AUTO"
data["to"] = "AUTO"
data["smartresult"] = "dict"
data["client"] = "fanyideskweb"
data["salt"] = "16539143637305"
data["sign"] = "3019817f3e54cab29e149d53e636607a"
data["lts"] = "1653914363730"
data["bv"] = "484152497a5f7dd5d5d73870f3ae7b45"
data["doctype"] = "json"
data["version"] = "2.1"
data["keyfrom"] = "fanyi.web"
data["action"] = "FY_BY_CLICKBUTTION"
data = urllib.parse.urlencode(data).encode("utf-8")

response = urllib.request.urlopen(url,data)
html = response.read().decode("utf-8")

print(html)

码农心 发表于 2022-5-31 08:41:17

isdkz 发表于 2022-5-31 01:07


请问是什么原理啊?就把translate_o?改为translate?就可以吗?????

码农心 发表于 2022-5-31 08:41:57

isdkz 发表于 2022-5-31 01:07


以后遇到这种问题都可以这样处理吗???

wp231957 发表于 2022-5-31 08:43:25

码农心 发表于 2022-5-31 08:41
请问是什么原理啊?就把translate_o?改为translate?就可以吗?????

有人说那是有道的真正接口,我倒是觉得那是有道的一个后门

wp231957 发表于 2022-5-31 08:44:05

码农心 发表于 2022-5-31 08:41
以后遇到这种问题都可以这样处理吗???

那不是开玩笑吗

码农心 发表于 2022-5-31 08:46:00

wp231957 发表于 2022-5-31 08:43
有人说那是有道的真正接口,我倒是觉得那是有道的一个后门

后门?是说有道的话可以这样处理?如果其它网站的反爬虫机制就不适用了?不明所以就觉得你们这些大佬很牛掰!!!

wp231957 发表于 2022-5-31 08:46:56

码农心 发表于 2022-5-31 08:46
后门?是说有道的话可以这样处理?如果其它网站的反爬虫机制就不适用了?不明所以就觉得你们这些大佬很牛 ...

当然仅局限于有道

isdkz 发表于 2022-5-31 08:59:29

通用的处理方法就是加上完整的请求头,或者加一些关键的,比如 Cookie,这样的话是不需要改 url 的

当初约定 发表于 2022-5-31 10:18:46

加头确实是比较好的,就是这时候频率不要那么快,不然可能会被封{:10_256:}
页: [1]
查看完整版本: 反爬虫