python模拟搜索请求的方法:1、输入“import requests”命令导入模块;2、输入“reqheaders={}”命令并在括号里定义请求头;3、定义post参数并模拟post请求;4、打印服务器返回的状态、内容、URL地址即可。
需要用到第三方module:requests,模拟接口。
#!coding:utf-8
#导入需要的requests
import requests
#定义请求头
reqheaders={'Content-type':'application/x-www-form-urlencoded',
'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Host':'www.renren.com', 'Origin':'http://zhichang.renren.com',
'Referer':'http://zhichang.renren.com',
'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1',}
#定义post的参数,requests模块,参数不用编码
reqdata={'email':'xxxx@xxx.com', 'password':'xxxx', 'autoLogin':'on',
'origURL':'http://zhichang.renren.com/?login_state=rr', 'domain':'renren.com' }
#模拟post请求,不让自动重定向
res=requests.post("http://www.renren.com/PLogin.do",data=reqdata,headers=reqheaders,allow_redirects=False)
#模拟post请求,这个是自动重定向
#res=requests.post("http://www.renren.com/PLogin.do",data=reqdata,headers=reqheaders)
#打印服务器返回的状态
print(res.status_code)
#打印服务器返回的内容
print(res.content)
#打印重定向的URL地址
print(res.headers['Location'])
#打印服务器返回的cookie
print(res.headers['Set-Cookie'])
以下是程序的运行结果
302
The URL has moved <a href="http://zhichang.renren.com/?login_state=rr">here</a>
anonymid=hrt38gcmbjulj4; domain=.renren.com; path=/; expires=Sun,
17-Feb-2019 11:27:44 GMT, _de=97FB170A42B4342D1C47A157AD77AAFC1383380866D39FF5; domain=.renren.com; path=/;
expires=Fri, 13-Feb-2015 11:27:44 GMT, p=31991a0a194c34e606ef1263317b06372; domain=renren.com; path=/;
expires=Thu, 20-Mar-2014 11:27:44 GMT, ap=229996362; domain=renren.com; path=/;
expires=Thu, 20-Mar-2014 11:27:44 GMT, first_login_flag=1; domain=renren.com; path=/,
t=7f5cc046700354f79346b8b51f2361882; domain=.renren.com; path=/,
t=b28114ad2246bad1b6b67f07b3b6c0a3; domain=renren.com; path=/xtalk/,
societyguester=7f5cc046700354f79346b8b51f2361882; domain=.renren.com; path=/,
id=229996362; domain=.renren.com; path=/, xnsid=bb3f9425; domain=.renren.com; path=/,
loginfrom=syshome; domain=.renren.com; path=/
推荐课程:Python高级视频教程