这里有新鲜出炉的 Python 入门,程序狗速度看过来!
Python 是一种面向对象、解释型计算机程序设计语言,由 Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991 年。Python 语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是 C/C++)很轻松地联结在一起。
本篇文章主要介绍了 Python 模拟登陆实现代码,这里整理了详细的代码, 具有一定的参考价值,感兴趣的小伙伴们可以参考一下
下面分享一个使用 Python 进行网站模拟登陆的小例子。
原理
使用 Cookie 技术,绕开网站登录验证。要使用到 cookielib 库。流程:
小案例
实现的功能是模拟登录到大连理工大学的教务网站。代码如下:
- #coding: UTF - 8
- import urllib,
- urllib2,
- cookielib
- filename = r 'F:\pachong\gaoqing\dlutcookie.txt'#show cookie and save to local cookie = cookielib.MozillaCookieJar() handler = urllib2.HTTPCookieProcessor(cookie) opener = urllib2.build_opener(handler)#记得使用urllib模块进行参数的encode postdata = urllib.urlencode({#哈哈,本宫不给你们我的账号╭ (╯ ^ ╰)╮'zjh': 'xxxxxxxxx',
- 'mm': 'XXXXXX'
- })
- #登陆到教务系统的url url = 'http://zhjw.dlut.edu.cn/loginAction.do'
- #开始进行模拟登陆,并把cookie保存到变量response = opener.open(url, postdata) cookie.save(filename, ignore_discard = True, ignore_expires = True)
- #打印一下获得的cookie信息吧
- for item in cookie: item.name + ' = ' + item.value
- #利用cookie访问另一个网址登陆到个人成绩的URL course_url = 'http://zhjw.dlut.edu.cn/xkAction.do?actionType=6'course_header = {
- 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) ApplewebKit/537.36 (Khtml, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586',
- 'referer': 'http://zhjw.dlut.edu.cn/menu/s_main.jsp'
- }
- result = opener.open(course_url) print result.read()
运行结果
总结
其实对于模拟登陆而言,第一次的登陆就是为了获取那个 cookie 数据。然后通过我们创建的 opener 来完成接下来我们要进行的关键的进一步的操作。我们需要理解的就只是那个 cookie 的使用的流程就行了。
来源: http://www.phperz.com/article/17/0629/336810.html