首页 > 编程语言 >盘点一个Python抓取有道翻译爬虫中的报错问题

盘点一个Python抓取有道翻译爬虫中的报错问题

时间:2022-10-03 15:31:35浏览次数:50  
标签:cookies ch 粉丝 Python 爬虫 报错 fanyi sec

大家好,我是皮皮。

一、前言

前几天在Python白银交流群【斌】问了一个Python网络爬虫的问题,提问截图如下:

盘点一个Python抓取有道翻译爬虫中的报错问题_Python开发

报错截图如下:

盘点一个Python抓取有道翻译爬虫中的报错问题_Python入门_02

粉丝需要的数据如下:

盘点一个Python抓取有道翻译爬虫中的报错问题_Python3_03

二、实现过程

有道翻译之前有做过很多,确实适合练手,主要是需要找到对应的请求。这里【dcpeng】结合粉丝的代码,然后给了一份正确的代码,如下所示:

import requests

headers = {
"Accept": "application/json, text/javascript, */*; q=0.01",
"Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",
"Connection": "keep-alive",
"Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
"Origin": "https://fanyi.youdao.com",
"Referer": "https://fanyi.youdao.com/",
"Sec-Fetch-Dest": "empty",
"Sec-Fetch-Mode": "cors",
"Sec-Fetch-Site": "same-origin",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.102 Safari/537.36 Edg/104.0.1293.70",
"X-Requested-With": "XMLHttpRequest",
"sec-ch-ua": "\"Chromium\";v=\"104\", \" Not A;Brand\";v=\"99\", \"Microsoft Edge\";v=\"104\"",
"sec-ch-ua-mobile": "?0",
"sec-ch-ua-platform": "\"Windows\""
}
cookies = {
"OUTFOX_SEARCH_USER_ID": "[email protected]",
"OUTFOX_SEARCH_USER_ID_NCOO": "242914410.9668874",
"P_INFO": "pdcfighting",
"_ga": "GA1.2.1404336446.1645147264",
"ANTICSRF": "cleared",
"NTES_OSESS": "cleared",
"S_OINFO": "",
"___rl__test__cookies": "1662539503369"
}
url = "https://fanyi.youdao.com/translate_o"
params = {
"smartresult": "rule"
}
data = {
"i": "dog",
"from": "AUTO",
"to": "AUTO",
"smartresult": "dict",
"client": "fanyideskweb",
"salt": "16625395033719",
"sign": "2a0056b7249263308d07a3fce52c065c",
"lts": "1662539503371",
"bv": "6f1d3ad76bcde34b6b6745e8ab9dc20a",
"doctype": "json",
"version": "2.1",
"keyfrom": "fanyi.web",
"action": "FY_BY_REALTlME"
}
response = requests.post(url, headers=headers, cookies=cookies, params=params, data=data)

print(response.json())
print(response)

运行之后,便可得到对应的结果了,如下图所示:

盘点一个Python抓取有道翻译爬虫中的报错问题_Python3_04

后来发现是构造参数少传了,难怪没获取到信息!

盘点一个Python抓取有道翻译爬虫中的报错问题_Python入门_05

后来粉丝发现了最终问题所在,虽然没看懂,但是只要解决问题了就好!

盘点一个Python抓取有道翻译爬虫中的报错问题_Python开发_06

三、总结

大家好,我是皮皮。这篇文章主要盘点了一个Python网络爬虫的问题,文中针对该问题,使用正则表达式匹配出想要的结果,并给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。


标签:cookies,ch,粉丝,Python,爬虫,报错,fanyi,sec
From: https://blog.51cto.com/u_13389043/5730383

相关文章

  • 将你的 Python 脚本转换为命令行程序
    使用Python中的​​scaffold​​​和​​click​​库,你可以将一个简单的实用程序升级为一个成熟的命令行界面工具。在我的职业生涯中,我写过、用过和看到过很多随意的......
  • 常见工程、应用、学习错误及安装问题之Python
    ​​pip临时使用国内镜像源​​​​python创建文件夹​​​​python读取文件下所有文件路径​​​​将numpy中的True/False转换成1/0​​​​使用python复制文件​​​​L......
  • 为python安装扩展模块时报错——error: invalid command 'bdist_wheel'
    具体过程: devil@hp:~/lab$./bazel-bin/python/pip_package/build_pip_package/tmp/dmlab_pkg2022年10月03日星期一14:05:54CST:===Buildingwheelusage:setu......
  • python pygame 迷宫生成
    importrandomimportsysimportpygame#使用pygame之前必须初始化pygame.init()#参数设置box_w,box_h=5,5#盒子宽高window_w,window_h=400,400x,y=0,0#盒......
  • python pygame 生命的游戏
    importsysimportpygameimportrandom#参数设置box_w,box_h=10,10#盒子宽高window_w,window_h=400,400x,y=0,0#使用pygame之前必须初始化pygame.init()#设......
  • pip报错:Script file ‘D:\anaconda3\Scripts\pip-script.py‘ is not present.
    ​​pip​​​执行任何命令的时候,都会有一个报错:​​Scriptfile'D:\anaconda3\Scripts\pip-script.py'isnotpresent.​​【Solution】进入​​pip-script.py​​所在的......
  • 学习python遇到的问题
    python重定向输入:io.UnsupportedOperation:notreadable两处错误一、用open打开一个文件,此时调用的是w写入模式,下面使用read是没有权限的,得使用w+读写模式二、使用wri......
  • 学习笔记-SQL报错注入
    报错注入的前提条件:Wed应用程序未关闭数据库报错函数,对于一些SQL语句的错误直接回显在页面上后台未对一些具有报错功能的函数(extractvalue,updataxml)过滤Xpath......
  • python学习:multiprocessing多进程-Pool进程池模块
    Multiprocessing.Pool可以提供指定数量的进程供用户调用,当有新的请求提交到pool中时,如果池还没有满,那么就会创建一个新的进程用来执行该请求;但如果池中的进程数已经达到规定......
  • 【推荐收藏】时间序列分析全面指南(附Python代码)
    大家好,时间序列是在规律性时间间隔上记录的观测值序列。本文我将带你了解在Python中分析给定时间序列的特征的21个全过程。内容较长,建议收藏、点赞、关注。内容​​1.什......