Python抓取Discuz!用户名脚本代码


Posted in Python onDecember 30, 2013

最近学习Python,于是就用Python写了一个抓取Discuz!用户名的脚本,代码很少但是很搓。思路很简单,就是正则匹配title然后提取用户名写入文本文档。程序以百度站长社区为例(一共有40多万用户),挂在VPS上就没管了,虽然用了延时但是后来发现一共只抓取了50000多个用户名就被封了。。。
代码如下:

# -*- coding: utf-8 -*-
# Author: 天一
# Blog: http://www.90blog.org
# Version: 1.0
# 功能: Python抓取百度站长平台用户名脚本import urllib
import urllib2  
import re
import time
def BiduSpider():
     pattern = re.compile(r'<title>(.*)的个人资料  百度站长社区 </title>')
     uid=1
     thedatas = []
     while uid <400000:
         theUrl = "http://bbs.zhanzhang.baidu.com/home.php?mod=space&uid="+str(uid)
         uid +=1
         theResponse  = urllib2.urlopen(theUrl)
         thePage = theResponse.read()
         #正则匹配用户名
         theFindall = re.findall(pattern,thePage)
         #等待0.5秒,以防频繁访问被禁止
         time.sleep(0.5)
         if theFindall :
              #中文编码防止乱码输出
              thedatas = theFindall[0].decode('utf-8').encode('gbk')
              #写入txt文本文档
              f = open('theUid.txt','a')
              f.writelines(thedatas+'\n')
              f.close()
if __name__ == '__main__':
     BiduSpider()

最终成果如下:

Python抓取Discuz!用户名脚本代码

Python 相关文章推荐
python之模拟鼠标键盘动作具体实现
Dec 30 Python
学习python类方法与对象方法
Mar 15 Python
利用Python获取操作系统信息实例
Sep 02 Python
Django如何实现内容缓存示例详解
Sep 24 Python
Python图像处理之简单画板实现方法示例
Aug 30 Python
python中字符串内置函数的用法总结
Sep 13 Python
让代码变得更易维护的7个Python库
Oct 09 Python
python将一个英文语句以单词为单位逆序排放的方法
Dec 20 Python
python通过robert、sobel、Laplace算子实现图像边缘提取详解
Aug 21 Python
用python的turtle模块实现给女票画个小心心
Nov 23 Python
keras实现多GPU或指定GPU的使用介绍
Jun 17 Python
Cpython解释器中的GIL全局解释器锁
Nov 09 Python
python之模拟鼠标键盘动作具体实现
Dec 30 #Python
python多线程http下载实现示例
Dec 30 #Python
python正则匹配查询港澳通行证办理进度示例分享
Dec 27 #Python
python模拟登录百度代码分享(获取百度贴吧等级)
Dec 27 #Python
python读文件逐行处理的示例代码分享
Dec 27 #Python
python调用cmd复制文件代码分享
Dec 27 #Python
win7安装python生成随机数代码分享
Dec 27 #Python
You might like
全新Mac配置PHP开发环境教程
2016/02/03 PHP
yii2 页面底部加载css和js的技巧
2016/04/21 PHP
thinkphp框架实现数据添加和显示功能
2016/06/29 PHP
php中数组最简单的使用方法
2020/12/27 PHP
JavaScript 拖拉缩放效果
2008/12/10 Javascript
javaScript面向对象继承方法经典实现
2013/08/20 Javascript
Js放到HTML文件中的哪个位置有什么区别
2013/08/21 Javascript
JavaScript编程中window的location与history对象详解
2015/10/26 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
2016/02/25 Javascript
JQuery EasyUI学习教程之datagrid 添加、修改、删除操作
2016/07/09 Javascript
vue制作加载更多功能的正确打开方式
2016/10/12 Javascript
bootstrap的工具提示实例代码
2017/05/17 Javascript
微信浏览器禁止页面下拉查看网址实例详解
2017/06/28 Javascript
vue 计时器组件的实现代码
2017/09/14 Javascript
JS实现websocket长轮询实时消息提示的效果
2017/10/10 Javascript
基于vue实现移动端圆形旋钮插件效果
2018/11/28 Javascript
浅谈express.js框架中间件(middleware)
2019/04/07 Javascript
JS实现返回上一页并刷新页面的方法分析
2019/07/16 Javascript
Node.js系列之连接DB的方法(3)
2019/08/30 Javascript
JavaScript实现左右滚动电影画布
2020/02/06 Javascript
微信小程序开发(二):页面跳转并传参操作示例
2020/06/01 Javascript
50行Python代码实现人脸检测功能
2018/01/23 Python
在Python中append以及extend返回None的例子
2019/07/20 Python
Python解压 rar、zip、tar文件的方法
2019/11/19 Python
python爬虫模块URL管理器模块用法解析
2020/02/03 Python
python json.dumps() json.dump()的区别详解
2020/07/14 Python
如何用 Python 制作 GitHub 消息助手
2021/02/20 Python
html5 canvas fillRect坐标和大小的问题解决方法
2014/03/26 HTML / CSS
澳大利亚网上玩具商店:Mr Toys Toyworld
2018/03/25 全球购物
阿迪达斯香港官网:adidas香港
2019/11/09 全球购物
代码中finally中的代码会不会执行
2012/02/06 面试题
临床医学专业学生的自我评价分享
2013/11/21 职场文书
大学生自我鉴定范文
2013/12/28 职场文书
感恩母亲节演讲稿
2014/05/07 职场文书
全国爱牙日活动总结
2015/02/05 职场文书
个人先进事迹总结
2015/02/26 职场文书