1-4 添加cookie的方式

#cookie

##第一种方式

手动复制抓包的cookie,放在request对象的请求头里

headers = {
    "User-Agent": UserAgent().chrome,
    "cookie": " ... "
}

##第二种方式

cookiejar自动保存cookie

后台 根据你发送请求方式来判断 你是get请求(登录页面),如果是post请求(结果页面)

#登录网址
url = "***"
#登录参数
login_form_data ={
	"user": "17703181473"
	"password": "123456"
}
#参数要进行转译
form_data = urllib.parse.urlencode(form_data).encode("utf-8")


cookie_jar = cookiejar()
#定义添加cookie功能的处理器
cook_handler = urllib.request.HTTPCookieProcessor(cookiejar)
#根据处理器生成opener
opener = urllib.request.build_opener(cook_handler)
#带参数发送post请求
#添加请求头
headers = {
	"User-Agent": Useragent().chrome
}
login_request = urllib.request.Request(url,headers=headers,data=login_form_data)

#如果登录成功,自动保存cookie
opener.open(login_request)
	
center_url="*****"
request = urllib.request.Request(center_url,headers=headers)
response = opener.open(center_url)
html = response.read().decode()

一个用户在不同地点(ip地址)在不同浏览器(UA)上不停登录,非人为登录

会封账号,所以需要多个帐号

urllib.request 提示错误 HTTPError UrlError

http 状态码:

200:访问成功

try:
	reponse = urllib.request.urlopen(url)
except urllib.request.HTTPErroras error:
	print(error.code)
	if error.code ==404:
		***
except urllib.request,URLError as error:
	print(e)

##requests

简单易用、url自动转译、python2,3方法名一样

content:返回的是字节

#转码
response.content.decode('utf-8')

text:返回字符串 (unicode)

请求头:

response.reques.headers

响应头:

reponse.headers

响应状态码:

reponse.status_code

请求cookie

reponse.request._cookies

响应的cookie

response.cookies

发post请求
request。post(url,data={},json+)))

json()自动将字符串转化成

data.responses.json()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值