我是怎么用python采集wooyun社区帖子的。
2013-10-05 22:42
387 查看
import urllib2 class SimpleCookieHandler(urllib2.BaseHandler): def http_request(self, req): simple_cookie = 'PHPSESSID=fcf3c469c3c80f3e8480aca76c87faa;ocKey=c9821225458886fa8329cccc283e60e;wy_uid=b52fOIbsG%2BB6kyNmyU9esuL%2FRb8GTatlM4n5ghw7dP4;wy_pwd=f770PcQrsQ2YyEUO07ouNVJxMxXvONgOQHcoXQ%2Bm4xJC22oosvWGDL6RJU09fIwTNkO9JTZ9yQMWXiszw' if not req.has_header('Cookie'): req.add_unredirected_header('Cookie', simple_cookie) else: cookie = req.get_header('Cookie') req.add_unredirected_header('Cookie', simple_cookie + '; ' + cookie) return req opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(), SimpleCookieHandler()); urllib2.install_opener(opener); while 1: for n in range(4,10): resp = urllib2.urlopen('http://zone.wooyun.org/content/'+repr(n)); file = open('c:\\'+repr(n)+'.html', 'w') for line in resp.read(): file.write(line) file.close() break;
首先定义个cookie类参考http://blog.csdn.net/uestcyao/article/details/7896184,把收集到的cookie放到simple_cookie内。使用urllib2模块完成整个功能。
说明:刚开始打算使用登录功能,自动提交cookie,要用到cookielib模块。后来发现需要验证码,折腾半天觉得验证码还是比较难缠的问题。暂时改变思路使用自己登录时采集的cookie进行提交。就可以模拟登录者的身份进行采集了。以后会研究验证码方面的功能。解决验证码方面的困扰。
相关文章推荐
- 怎么不能发帖子了??
- python爬虫实战之爬取知乎帖子
- python程序中文输出问题怎么解决?
- python网络数据采集第一天
- python---多线程采集示例
- Phpcms v9采集错误:“没有找到网址列表,请先进行网址采集”怎么解决?
- 使用python进行数据的采集
- Python网络数据采集5:存储数据
- python实现自动登录人人网并采集信息的方法
- python 怎么随机生成15位随机数字
- Python网页信息采集:使用PhantomJS采集淘宝天猫商品内容
- Python selenium —— 动态id、class怎么定位
- 怎么写用例 网上看到的帖子
- 他妈的 Python(1):怎么发起一个同步的 HTTP 请求
- 笔记之Python网络数据采集
- 火车头采集规则,火车头采集数据发布不小心设置了发布数量怎么修改?
- python链接数据库SQL Server 2005出错怎么办???附解决方案以及开启TCP/IP协议和查看默认端口的过程
- 怎么看windows下 Python的
- Python爬虫实战(4):豆瓣小组话题数据采集―动态网页
- python多线程抓取天涯帖子内容示例