Cyrus Flag

flag{S0_bangbang_7ha7_u_f1nd_h3r3}

爬虫入门 0x01 模拟某验证系统登录

Python搞事?

学校的信息门户登录验证过程大致如下

  1. 登录页面由服务器随机提供一个params_lt, 在源码中可见
  2. 用提供的params_lt登录,post之后提供一个params_ticket
  3. get获取ticket为params_ticket 完成登录

最初尝试 allow_redirect = False 然后失败了。一方面是Step2的跳转会直接提供cookies,Step3其实是不需要的,验证cookies就可以了。另一方面是,我尝试时还不知道requests的session怎么用。。。

之前看dalao室友的爬虫,学习了一下re。又看了一个学长的代码,下决心转Python3了。突然感觉,我超喜欢游标卡尺的。

核心知识点?

1
2
3
4

u = requests.session()
A = u.post( page_a )
B = u.get( page_b )

A和B会在同一个会话u中打开。

完成代码见 Github