您的位置:首页 > 编程语言 > Python开发

python requests 自动管理cookie, session保持连接,抓取数据后结束

2013-10-20 21:41 507 查看
写的一个模拟登陆自己学校aao.neu.edu.cn里面进行成绩查询python代码。

import requests

Target='http://202.118.31.197/ACTIONLOGON.APPPROCESS'
Data={"WebUserNO":"#####","######":"86458043",
"Agnomen":" ","submit.x":"-664","submit.y":"-166",
"applicant":"ACTIONQUERYSTUDENTSCHEDULEBYSELF"}
r = requests.post(Target,Data)
print r.text


这一段是最简单的requests模块登陆。 之后获得html页面就可以用  

BeautifulSoup模块进行处理了。

from bs4 import BeautifulSoup

html = r.text

soup = BeautifulSoup(html)

soup.find("div")


之后调用soup模块就可以定点查询。定点查所要的数据了。

提供两个链接  http://www.crummy.com/software/BeautifulSoup/bs4/doc/ 这是BeautifulSoup的用法。

跟 http://docs.python-requests.org/en/latest/  requests的用法。。  

两个都很详细。。

然后查成绩就麻烦一点了。要开session。查询两次。。

import requests

Target='http://202.118.31.197/ACTIONLOGON.APPPROCESS'
Data={"WebUserNO":"######","Password":"#####",
"Agnomen":" ","submit.x":"-664","submit.y":"-166",
"applicant":"ACTIONQUERYSTUDENTSCHEDULEBYSELF"}
s = requests.session()
r1 = s.post(Target,Data)

print r1.text
T2 = 'http://202.118.31.197/ACTIONQUERYSTUDENTSCORE.APPPROCESS'
D2 = {"YearTermNO":"18"}
r2 = s.post(T2,D2)
print r2.text


之后同样用  BeautifulSoup处理
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 抓取数据