鱼C论坛

 找回密码
 立即注册
查看: 3895|回复: 28

[已解决]爬虫百度翻译

[复制链接]
发表于 2021-3-15 23:38:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import urllib.request
import urllib.parse

url = 'https://fanyi.baidu.com/v2transapi?from=zh&to=en'
data = {}
data['from'] = 'zh'
data['to'] = 'en'
data['query'] = '我爱你'
data['transtype'] = 'translang'
data['simple_means_flag'] = '3'
data['sign'] = '47194.285547'
data['token'] = 'ddbdca26bb267869a292ad31eee630df'
data['domain'] = 'common'

data = urllib.parse.urlencode(data).encode('utf-8')

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

print(html)

报错如下:
{"errno":998,"errmsg":"\u672a\u77e5\u9519\u8bef","query":"\u6211\u7231\u4f60","from":"zh","to":"en","error":998}

没撤了还请各位大佬指教
最佳答案
2021-3-15 23:53:44
python_aini 发表于 2021-3-15 23:50
而且我 的代码是有些什么问题

代码没问题
好像是百度翻译内容加密了
这样爬不了
如果是urllib我也搞不来这个
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-3-15 23:47:04 | 显示全部楼层
本帖最后由 小伤口 于 2021-3-15 23:48 编辑

之前用urllib爬百度翻译,我也没爬到
还是有道吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-15 23:47:34 | 显示全部楼层
import urllib.request
import urllib.parse
import json
from tkinter import*
class Youdao:
    i=0
    def cut(editor, event=None):
        editor.event_generate("<<Cut>>")
    def copy(editor, event=None):
        editor.event_generate("<<Copy>>")
    def paste(editor, event=None):
        editor.event_generate('<<Paste>>')
    def rightKey(event, editor):
        menubar.delete(0,END)
        menubar.add_command(label='剪切',command=lambda:cut(editor))
        menubar.add_command(label='复制',command=lambda:copy(editor))
        menubar.add_command(label='粘贴',command=lambda:paste(editor))
        menubar.post(event.x_root,event.y_root)


        
    def youdao():
        ent2.delete(1.0,'end')
        content=ent.get(1.0,'end')
        
        a=[]
        url='http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
        head={}
        head['User-Agent']='Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 UBrowser/6.2.4098.3 Safari/537.36'
        data={}
        data['i']=content
        data['from']='AUTO'
        data['to']='AUTO'
        data['smartresult']='dict'
        data['client']='fanyideskweb'
        data['salt']='16079142839884'
        data['sign']='7fa30595c70a9a765816fda28b64b9ac'
        data['lts']='1607914283988'
        data['bv']='4b9de992aa3d23c2999121d735e53f9c'
        data['doctype']='json'
        data['version']='2.1'
        data['keyfrom']='fanyi.web'
        data['action']='FY_BY_REALTlME'



        data=urllib.parse.urlencode(data).encode('utf-8')
        req=urllib.request.Request(url,data,head)
        response=urllib.request.urlopen(req)

        html=response.read().decode('utf-8')

        target=json.loads(html)
        
       
        ent2.insert(INSERT,target['translateResult'][0][0]["tgt"])
        ent2.insert(INSERT,'\n')
    def C():
        ent.delete(1.0,'end')
        ent2.delete(1.0,'end')
    root=Tk()


    Label(root,text='请输入翻译内容:').grid(row=0,column=0)
    menubar = Menu(root,tearoff=False)#创建一个菜单
    ent=Text(root,width=40,height=8,bg='pink')
    ent.bind("<Button-3>", lambda x: rightKey(x, ent))#绑定右键鼠标


    ent.grid(row=0,column=1,padx=10,pady=5)

    Label(root,text='翻译结果:').grid(row=100,column=0)
    ent2=Text(root,width=40,height=8,bg='pink')
    ent2.bind("<Button-3>", lambda x: rightKey(x, ent2))#绑定右键鼠标
    ent2.grid(row=100,column=1,padx=10,pady=5)
    theButton=Button(root,text='点击翻译',command=youdao)
    theButton.grid(row=4,column=1,sticky=E,padx=10,pady=5)
    theButton2=Button(root,text='清空',command=C)
    theButton2.grid(row=3,column=1,sticky=E,padx=10,pady=5)

    mainloop()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-15 23:50:02 | 显示全部楼层

我有点看不懂啊,大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-15 23:50:45 | 显示全部楼层

而且我 的代码是有些什么问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-15 23:51:27 | 显示全部楼层
python_aini 发表于 2021-3-15 23:50
我有点看不懂啊,大佬

是有点tkinter的内容
等一下啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-15 23:53:05 | 显示全部楼层
小伤口 发表于 2021-3-15 23:51
是有点tkinter的内容
等一下啊

而且有道的审查元素没有from data
所以我有点蒙蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-15 23:53:44 | 显示全部楼层    本楼为最佳答案   
python_aini 发表于 2021-3-15 23:50
而且我 的代码是有些什么问题

代码没问题
好像是百度翻译内容加密了
这样爬不了
如果是urllib我也搞不来这个
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-15 23:54:43 | 显示全部楼层
小伤口 发表于 2021-3-15 23:53
代码没问题
好像是百度翻译内容加密了
这样爬不了

哦豁
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-15 23:55:35 | 显示全部楼层
python_aini 发表于 2021-3-15 23:53
而且有道的审查元素没有from data
所以我有点蒙蔽

真的吗?
我去看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-15 23:56:02 | 显示全部楼层

没有解决方法了嘛
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-15 23:57:31 | 显示全部楼层
python_aini 发表于 2021-3-15 23:56
没有解决方法了嘛

没试过
应该也不难吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-15 23:59:42 | 显示全部楼层
小伤口 发表于 2021-3-15 23:57
没试过
应该也不难吧

我一个菜鸟级别的码农没撤了呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-16 00:01:01 | 显示全部楼层
python_aini 发表于 2021-3-15 23:53
而且有道的审查元素没有from data
所以我有点蒙蔽

QQ截图20210316000018.png

有啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-16 00:01:49 | 显示全部楼层
本帖最后由 小伤口 于 2021-3-16 00:02 编辑
python_aini 发表于 2021-3-15 23:50
而且我 的代码是有些什么问题

import urllib.request
import urllib.parse
import json
import time

while True:
      content = input("请输入要翻译的内容:(输入”q!”退出程序):")
      if content == "q!":
            break

      url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult"

      head = {}#加请求头
      head['User.Agent'] = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36"
      data = {}
      data["i"] = content
      data["from"] = "AUTO"
      data["to"] = "AUTO"
      data["smartresult"] = "dict"
      data["client"] = "fanyideskweb"
      data["salt"] = "15981872159194"
      data["sign"] = "cfd7bc0ad5a9d4433c3ff54e338c61f9"
      data["lts"] = "1598187215919"
      data["bv"] = "4b1009b506fa4405f21e207abc4459fd"
      data["doctype"] = "json"
      data["version"] = "2.1"
      data["keyfrom"] = "fanyi.web"
      data["action"] =" FY_BY_REALTlME"
      data = urllib.parse.urlencode(data).encode("utf-8")

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

      target = json.loads(html)
      print("翻译结果:%s"%(target["translateResult"][0][0]["tgt"]))
      time.sleep(5)

爬取有道翻译进行翻译
https://fishc.com.cn/thread-191223-1-1.html
(出处: 鱼C论坛)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-16 00:04:13 | 显示全部楼层

我怎么没有吖,真的没有找到
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-16 00:04:26 | 显示全部楼层
本帖最后由 小伤口 于 2021-3-16 00:14 编辑
head = {}#加请求头
head['User.Agent'] = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36"
python_aini 发表于 2021-3-15 23:59
我一个菜鸟级别的码农没撤了呀


重新试一下有道吧
就用你百度翻译的办法就行
然后加一个请求头应该基本没问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-16 00:05:21 | 显示全部楼层
python_aini 发表于 2021-3-15 23:53
而且有道的审查元素没有from data
所以我有点蒙蔽

必须用谷歌浏览器吗,?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-16 00:05:30 | 显示全部楼层
python_aini 发表于 2021-3-16 00:04
我怎么没有吖,真的没有找到

这个要多找几个
找到与你输入的内容完全一致的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-16 00:06:38 | 显示全部楼层
小伤口 发表于 2021-3-16 00:05
这个要多找几个
找到与你输入的内容完全一致的

好的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-16 08:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表