python制作花瓣网美女图片爬虫
短信预约 -IT技能 免费直播动态提醒
花瓣图片的加载使用了延迟加载的技术,源代码只能下载20多张图片,修改后基本能下载所有的了,只是速度有点慢,后面再优化下
import urllib, urllib2, re, sys, os,requests
path=r"C:wqabeautify"
url = 'http://huaban.com/favorite/beauty'
#http://huaban.com/explore/zhongwenlogo/?ig1un9tq&max=327773629&limit=20&wfl=1
i_headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36"}
count=0
def urlHandle(url):
req = urllib2.Request(url, headers=i_headers)
html = urllib2.urlopen(req).read()
reg = re.compile(r'"pin_id":(d+),.+?"file":{"farm":"farm1", "bucket":"hbimg",.+?"key":"(.*?)",.+?"type":"image/(.*?)"', re.S)
groups = re.findall(reg, html)
return groups
def imgHandle(groups):
if groups:
for att in groups:
pin_id = att[0]
att_url = att[1] + '_fw236'
img_type = att[2]
img_url = 'http://img.hb.aicdn.com/' + att_url
r = requests.get(img_url)
with open(path + att_url + '.' + img_type, 'wb') as fd:
for chunk in r.iter_content():
fd.write(chunk)
groups = urlHandle(url)
imgHandle(groups)
while(groups):
count+=1
print count
pin_id = groups[-1][0]
print pin_id
urltemp = url+'/?max=' + str(pin_id) + '&limit=' + str(20) + '&wfl=1'
print(urltemp)
groups = urlHandle(urltemp)
#print groups
imgHandle(groups)
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341