python小技巧之批量抓取美女图片


Posted in Python onJune 06, 2014

其中用到urllib2模块和正则表达式模块。下面直接上代码:

[/code]
#!/usr/bin/env python
#-*- coding: utf-8 -*-
#通过urllib(2)模块下载网络内容
import urllib,urllib2,gevent
#引入正则表达式模块,时间模块
import re,time
from gevent import monkey

monkey.patch_all()

def geturllist(url):
    url_list=[]
    print url      
    s = urllib2.urlopen(url)
    text = s.read()
    #正则匹配,匹配其中的图片
    html = re.search(r'<ol.*</ol>', text, re.S)
    urls = re.finditer(r'<p><img src="(.+?)jpg" /></p>',html.group(),re.I)
    for i in urls:
        url=i.group(1).strip()+str("jpg")
        url_list.append(url)
    return url_list

def download(down_url):
    name=str(time.time())[:-3]+"_"+re.sub('.+?/','',down_url)
    print name
    urllib.urlretrieve(down_url, "D:\\TEMP\\"+name)

def getpageurl():
    page_list = []
    #进行列表页循环
    for page in range(1,700):
        url="http://jandan.net/ooxx/page-"+str(page)+"#comments"
        #把生成的url加入到page_list中
        page_list.append(url)
    print page_list
    return page_list
if __name__ == '__main__':
    jobs = []
    pageurl = getpageurl()[::-1]
    #进行图片下载
    for i in pageurl:
        for (downurl) in geturllist(i):
            jobs.append(gevent.spawn(download, downurl))
    gevent.joinall(jobs)
[/code]

程序不长才45行,不是太难,大家可以研究下,这里我只是抛砖引玉,大家可以根据原理开发出其他的抓取程序,呵呵,自己想去吧。。。我就不多说了~~

Python 相关文章推荐
Python端口扫描简单程序
Nov 10 Python
Python 列表(List) 的三种遍历方法实例 详解
Apr 15 Python
有趣的python小程序分享
Dec 05 Python
python深度优先搜索和广度优先搜索
Feb 07 Python
Python下调用Linux的Shell命令的方法
Jun 12 Python
pandas如何处理缺失值
Jul 31 Python
Python爬虫爬取Bilibili弹幕过程解析
Oct 10 Python
Python with标签使用方法解析
Jan 17 Python
Python Numpy中数据的常用保存与读取方法
Apr 01 Python
django queryset 去重 .distinct()说明
May 19 Python
pytorch 运行一段时间后出现GPU OOM的问题
Jun 02 Python
Python虚拟环境virtualenv是如何使用的
Jun 20 Python
Python学习笔记(二)基础语法
Jun 06 #Python
pycharm 使用心得(九)解决No Python interpreter selected的问题
Jun 06 #Python
pycharm 使用心得(八)如何调用另一文件中的函数
Jun 06 #Python
pycharm 使用心得(七)一些实用功能介绍
Jun 06 #Python
pycharm 使用心得(六)进行简单的数据库管理
Jun 06 #Python
pycharm 使用心得(五)断点调试
Jun 06 #Python
pycharm 使用心得(四)显示行号
Jun 05 #Python
You might like
实现dedecms全站URL静态化改造的代码
2007/03/29 PHP
php 获取一个月第一天与最后一天的代码
2010/05/16 PHP
PHP中的reflection反射机制测试例子
2014/08/05 PHP
php+mysql实现简单的增删改查功能
2015/07/13 PHP
PHP下SSL加密解密、验证、签名方法(很简单)
2020/06/28 PHP
php实现当前页面点击下载文件的简单方法
2016/09/22 PHP
PHP strripos函数用法总结
2019/02/11 PHP
php生成word并下载代码实例
2019/03/15 PHP
Jquery 基础学习笔记之文档处理
2009/05/29 Javascript
js 动态选中下拉框
2009/11/26 Javascript
JS截取url中问号后面参数的值信息
2014/04/29 Javascript
javascript初学者常用技巧
2014/09/02 Javascript
JavaScript中var关键字的使用详解
2015/08/14 Javascript
基于jquery实现表格内容筛选功能实例解析
2016/05/09 Javascript
超实用的javascript时间处理总结
2016/08/16 Javascript
jQuery Mobile漏洞会有跨站脚本攻击风险
2017/02/12 Javascript
AngularJS实现页面定时刷新
2017/03/14 Javascript
JavaScript 自定义事件之我见
2017/09/25 Javascript
vue 项目常用加载器及配置详解
2018/01/22 Javascript
AngularJS实现动态切换样式的方法分析
2018/06/26 Javascript
使用React手写一个对话框或模态框的方法示例
2019/04/25 Javascript
vue实现PC端录音功能的实例代码
2019/06/05 Javascript
python引用DLL文件的方法
2015/05/11 Python
举例详解Python中yield生成器的用法
2015/08/05 Python
Python学习之用pygal画世界地图实例
2017/12/07 Python
浅谈numpy生成数组的零值问题
2018/11/12 Python
使用Python在Windows下获取USB PID&amp;VID的方法
2019/07/02 Python
python 字典套字典或列表的示例
2019/12/16 Python
Python hashlib模块实例使用详解
2019/12/24 Python
PyCharm 2020 激活到 2100 年的教程
2020/03/25 Python
Tripadvisor新西兰:阅读评论,比较价格和酒店预订
2018/02/10 全球购物
英国最大的海报商店:GB Posters
2018/03/20 全球购物
锐步英国官网:Reebok英国
2019/11/29 全球购物
Unineed中文官网:高端护肤美妆与时尚配饰,英国直邮
2020/07/23 全球购物
股权收购意向书
2014/04/01 职场文书
统计学教授推荐信
2014/09/18 职场文书