mavericks
发表于 2015-9-14 08:28:26
lilyef2000 发表于 2015-9-8 15:50
我的就是python2.7,运行有问题
什么问题?能贴报错看看吗?
a794581572
发表于 2015-9-14 09:47:00
看看 嘿嘿
a794581572
发表于 2015-9-14 09:48:12
最近在学python3版的 如果是3版的就好了
Gordonzf
发表于 2015-9-14 09:55:53
顶~~~
lilyef2000
发表于 2015-9-15 19:59:44
本帖最后由 lilyef2000 于 2015-9-15 20:04 编辑
mavericks 发表于 2015-9-14 08:28
什么问题?能贴报错看看吗?
今天闲着没事调了一下,通过了,有一点改动,贴上代码
# -*- coding: utf-8 -*-
import re
import os
import urllib2
import urllib
#打开URL
def url_open(url):
req=urllib2.Request(url)
req.add_header('User-Agent','Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36')
resp=urllib2.urlopen(req)
html=resp.read()
return html
#找到有图片的链接
def get_page(url):
html=url_open(url)
find_html=r'<a target="_blank" href="(http://www.mm131.com/xinggan/\d{3}\d?\.html)">'
htmllist=re.findall(find_html,html)
return htmllist
#在链接中找图片
def get_img(url):
html=url_open(url)
#获得图片数量
find_img_num=r"<a href='\d{3}\d?_\d\d?\.html' "
img_num=len(re.findall(find_img_num,html))
#获得图片编号
find_img_id=r"<a href='(\d{3}\d?)_\d\d?\.html' "
img_id=(re.findall(find_img_id,html))
#图片链接的规律是http://img1.mm131.com/pic/\d{3}\d/\d\d?\.jpg,其中第二个数字是从1到图片总量的数字
#根据这个规律,以下是寻找图片的链接保存在一个列表
num=1
imglist=[]
for eachimg in range(0,img_num,1):
eachimg='http://img1.mm131.com/pic/%s/%s.jpg' %(img_id,str(num))
imglist.append(eachimg)
num+=1
return img_id,img_num,imglist
#下载图片
def download():
url='http://www.mm131.com/xinggan/'#这个是性感美女板块的第一页,可以模仿上面找规律方法,并通过循环来下载所有页或其他板块
h=get_page(url)
if not os.path.exists('Beauty'):
os.mkdir('Beauty')
os.chdir('Beauty')
for eachhtml in h:
(pid,num,piclist)=get_img(eachhtml)
if not os.path.exists(pid):
os.mkdir(pid)
os.chdir(pid)
for eachpic in piclist:
eachpic_name=(eachpic).split('/')[-1]
if not os.path.exists(eachpic_name): #同个美女保存在一个以美女编号为名的文件夹
urllib.urlretrieve(eachpic,eachpic_name,None)
print u'已成功获取',num,u'张图片保存于',pid,u'中,正在获取下一批,请耐心等待...'
os.chdir('E:\mm')#这个相当于返回上一个文件夹
print u'获取完毕!'
download()
开头加入了代码声明
# -*- coding: utf-8 -*-
import reimport os
改为
import re
import os
os.chdir('F:\\workspace\\Reptile\\src\\MyReptile\Beauty')#这个相当于返回上一个文件夹
这一句是要存在这样的目录才能通过的,我在我的E盘建了个mm文件夹,代码改成了
os.chdir('E:\mm')
调试通过
夕阳游龙
发表于 2015-9-16 18:26:24
看着都是黄的!
mavericks
发表于 2015-9-16 19:39:27
lilyef2000 发表于 2015-9-15 19:59
今天闲着没事调了一下,通过了,有一点改动,贴上代码
啊,对对,那会贴代码的时候按错键了。
影子
发表于 2015-9-17 17:29:59
激动人心无法言表
夕阳游龙
发表于 2015-9-18 17:10:58
哈哈,有涉及黄!
jtydxx
发表于 2015-9-23 09:16:59
thanks
qqqq79852852
发表于 2015-9-23 10:12:49
水电经验把
lengyudu
发表于 2015-9-30 10:24:32
芝麻开门
山歌
发表于 2015-9-30 10:33:06
学习学习!!!
节操
发表于 2015-9-30 10:37:09
66666666666666
我疯狂我成功
发表于 2015-9-30 10:59:42
棒棒哒
screenswindow
发表于 2015-9-30 11:02:10
居然没有美女镇楼
Jeremysssss
发表于 2015-10-3 18:12:21
谢谢分享
chuxue
发表于 2015-10-7 19:47:31
搜索东方闪电
mavericks
发表于 2015-10-10 17:00:24
都散了吧,网站被和谐了。。。
不坏不修
发表于 2015-10-10 17:16:52
看看