python3.0学习四 隐藏访问浏览器

'''
备注:这里是用head把访问主机的访问者User-Agent人为的设定
成浏览器访问。其中head也是一个字典

'''

import urllib.request
#parse解析
import urllib.parse
import json

content=input("请输入需要翻译的内容:")

url='http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=null'

'''

#这是一种方法,还可以用第二种方法。
head={}
head['User-Agent']='Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36'
'''



data={}
data['type']='AUTO'



#data['i']="I love you"
#下面这个进行一般化           
data['i']=content

data['doctype']='json'
data['xmlVersion']='1.8'
data['keyfrom']='fanyi.web'
data['ue']='UTF-8'
data['action']='FU_BY_ENTER'
data['typoResult']='ture'

#encode硬编码
data=urllib.parse.urlencode(data).encode('utf-8')

#添加一个head用于隐藏程序访问




#这里有data参数就是post,没有就默认get形式提交

#第一种方法用
#req=urllib.request.Request(url,data,head)

#第二种方法用
req=urllib.request.Request(url,data)
#这里第二种方法
req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36')


response=urllib.request.urlopen(req)
html=response.read().decode('utf-8')

#打印出来的是字典格式
#print(html)
target=json.loads(html)

#注意niaho:%s',%(targ里面的逗号是错误的
#print('niaho:%s',%(target['smartResult']['entries'][1]))

print("你查到的结果是: %s" %target['smartResult']['entries'][1])



#以下是运行结果
============== RESTART: C:\Users\Administrator\Desktop\niub.py ==============
请输入需要翻译的内容:linux
你查到的结果是: n. Linux操作系统(一种类似于UNIX的计算机操作系统)
>>> req.headers
{'User-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36'}
>>> 
============== RESTART: C:\Users\Administrator\Desktop\niub.py ==============
请输入需要翻译的内容:love
Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\niub.py", line 43, in <module>
    req=urllib.request.Request(url,data,head)
NameError: name 'head' is not defined
>>> 
============== RESTART: C:\Users\Administrator\Desktop\niub.py ==============
请输入需要翻译的内容:你好、
Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\niub.py", line 48, in <module>
    req=urllib.request.Request(url,data,head)
NameError: name 'head' is not defined
>>> 
============== RESTART: C:\Users\Administrator\Desktop\niub.py ==============
请输入需要翻译的内容:loce
Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\niub.py", line 48, in <module>
    req=urllib.request.Request(url,data,head)
NameError: name 'head' is not defined
>>> 
============== RESTART: C:\Users\Administrator\Desktop\niub.py ==============
请输入需要翻译的内容:loce
你查到的结果是: 周家宇
>>> 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值