python抓取性感尤物美女图
由于是只用标准库,装了python3运行本代码就能下载到多多的美女图...
写出代码前面部分的时候,我意识到自己的函数设计错了,强忍继续把代码写完。
测试发现速度一般,200K左右的下载速度,也没有很好的错误处理。不过还是基本上能用。以后继续改进。
写出抓取东西的程序,比写其它程序要开心很多。_,大家也来试试写一个?

"""
python抓取性感尤物美女图.py
2016年5月4日 00:51:00 codegay
参考资料: Python3学习笔记(urllib模块的使用)
http://www.cnblogs.com/Lands-ljk/p/5447127.html
以下例子是python2的代码,并且用到lxml,requests 库
我用python3标准库和正则写一个下载全站美女图的程序
使用python来批量抓取网站图片
http://www.cnblogs.com/TeyGao/p/5225940.html
"""
print("程序运行中...")
import re
from urllib import request
import os
from pprint import pprint
from time import sleep
rooturl="http://www.xgyw.cc/"
def getclass():
rec=re.compile('''align=center\>\<a href="(/\w+/)\"\>(.+)\</a\>''')
try:
txt=request.urlopen(rooturl).read().decode("gbk")
fl=rec.findall(txt)
except:
print("错误")
sleep(1)
print("分类:")
pprint(fl)
return fl
fenlei=getclass()#下载所有分类下的图片
#fenlei=[getclass()[-1]]#只下载推女郎
def getpagelist():
plist=[]
for f,n in fenlei:
rec=re.compile('''({}page_\d+?\.html)'''.format(f))
try:
txt=request.urlopen(rooturl+f).read().decode("gbk")
t=sorted(set(rec.findall(txt)+[f]))
plist+=t
except:
print("错误",e)
sleep(1)
#print("page_list:")
#pprint(plist)
return plist
pagelist=getpagelist()
def getalbumlist():
albumlist=[]
for r in pagelist:
print(rooturl+r)
try:
txt=request.urlopen(rooturl+r).read().decode("gbk")
for x in re.findall(r'''href=(/(\w+)/(\2)\d+.html)''',txt):
albumlist+=[x[0]]
except:
print("getalbumlist错误")
sleep(1)
return albumlist
albumlist=getalbumlist()
def getfphoto():
for r in albumlist:
try:
txt=request.urlopen(rooturl+r).read().decode("gbk")
result=re.findall(r'''(/(\w+)/(\2)\d+_?\d*.html)''',txt)
except:
sleep(1)
pass
for x in result:
try:
html=request.urlopen(rooturl+x[0]).read().decode("gbk")
jpgresult=re.findall('''src=\"(/uploadfile.*?\d+/\w+\.jpg)\"''',html)
print(jpgresult)
except:
sleep(1)
for h in jpgresult:
try:
request.urlretrieve(rooturl+h,os.path.basename(h))
except:
print(3)
sleep(1)
getfphoto()
python抓取性感尤物美女图的更多相关文章
- 教你用python爬取网站美女图(附代码及教程)
我前几篇文章都是说一些python爬虫库的用法,还没有说怎样利用好这些知识玩一些好玩的东西.那我今天带大家玩好玩又刺激的,嘻嘻!对了,requests库和正则表达式很重要的,一定要学会!一定要学会!! ...
- 【Python爬虫程序】抓取MM131美女图片,并将这些图片下载到本地指定文件夹。
一.项目名称 抓取MM131美女写真图片,并将这些图片下载到本地指定文件夹. 共有6种类型的美女图片: 性感美女 清纯美眉 美女校花 性感车模 旗袍美女 明星写真 抓取后的效果图如下,每个图集是一个独 ...
- 使用Python抓取猫眼近10万条评论并分析
<一出好戏>讲述人性,使用Python抓取猫眼近10万条评论并分析,一起揭秘“这出好戏”到底如何? 黄渤首次导演的电影<一出好戏>自8月10日在全国上映,至今已有10天,其主演 ...
- python抓取知乎热榜
知乎热榜讨论话题,https://www.zhihu.com/hot,本文用python抓取下来分析 #!/usr/bin/python # -*- coding: UTF-8 -*- from ur ...
- Python 抓取网页并提取信息(程序详解)
最近因项目需要用到python处理网页,因此学习相关知识.下面程序使用python抓取网页并提取信息,具体内容如下: #---------------------------------------- ...
- 使用 Python 抓取欧洲足球联赛数据
Web Scraping在大数据时代,一切都要用数据来说话,大数据处理的过程一般需要经过以下的几个步骤 数据的采集和获取 数据的清洗,抽取,变形和装载 数据的分析,探索和预测 ...
- python抓取网页例子
python抓取网页例子 最近在学习python,刚刚完成了一个网页抓取的例子,通过python抓取全世界所有的学校以及学院的数据,并存为xml文件.数据源是人人网. 因为刚学习python,写的代码 ...
- Python抓取页面中超链接(URL)的三中方法比较(HTMLParser、pyquery、正则表达式) <转>
Python抓取页面中超链接(URL)的3中方法比较(HTMLParser.pyquery.正则表达式) HTMLParser版: #!/usr/bin/python # -*- coding: UT ...
- 如何用python抓取js生成的数据 - SegmentFault
如何用python抓取js生成的数据 - SegmentFault 如何用python抓取js生成的数据 1赞 踩 收藏 想写一个爬虫,但是需要抓去的的数据是js生成的,在源代码里看不到,要怎么才能抓 ...
随机推荐
- No resource found that matches the given name 'Theme.AppCompat.Light'
eclipse在新建andorid工程的时候出现找不到AppCompat.Light主题的问题,这是因为缺少支持低版本的v7包所致, 这个不是jar包,在sdk的extras->andorid- ...
- c语言数据结构:递归的替代-------回溯算法
1.要理解回溯就必须清楚递归的定义和过程. 递归算法的非递归形式可采用回溯算法.主要考虑的问题在于: 怎样算完整的一轮操作. 执行的操作过程中怎样保存当前的状态以确保以后回溯访问. 怎样返回至上一次未 ...
- React添加事件
定义个组件 组件首字母大写,调用: ReactDOM.render(<Hello></Hello>,document.getElementById('box'));
- 2.2 利用项目模板创建ASP.NET MVC项目
1.启动VS2012,点击“文件|新建|项目”. 2.在新建项目的窗口中,选择ASP.NET MVC 4应用程序. 3.在新ASP.NET MVC 4项目窗口中的“选择模板”列表中选择“基本”模板,在 ...
- PHP 启动 cURL模块以及启动失败的解决方案
配置方法: php_curl.dll libeay32.dll ssleay32.dll php5ts.dll 复制到 %windir%/system32 以及php 目录的ext目录 下 并且找到p ...
- 在Access中批量调用SQL语句
access的SQL视图一次只能执行一条SQL语句,那么在VBA中调用或许可以简便一些 例如: Public Sub 批量()Dim strsql As String strsql = " ...
- Qt之QRadioButton
简述 QRadioButton部件提供了一个带有文本标签的单选框(单选按钮). QRadioButton是一个可以切换选中(checked)或未选中(unchecked)状态的选项按钮.单选框通常呈现 ...
- easyui的基本用法
之前有用过extjs,最近发现easyui和fineui和extjs比较类似,并且稍微简单一点,所以考虑使用. 以下是项目中的具体简单应用 function callback2d(data) {//d ...
- C线程同步/异步
#include<windows.h> #include<stdio.h> #include<string.h> //#include <afxmt.h> ...
- hdu----(4545)魔法串(LCS)
魔法串 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Submiss ...