却道天凉好个秋~
本套源码出自黑白配博客,转载请注明出处
简介:这个py爬虫是一个适合小白学习的图片爬虫代码,只是最基本的功能用处学习,不多说,先上源码:
- # coding:utf8
- #http://www.manmankan.com/dy2013/mingxing/tupian/201305/2037.shtml
- #这个页面是漫漫看的我女神孙艺珍的图片写真页地址
- import urllib2 #py2的打开网页的库
- import os #文件路径相关的库
- from bs4 import BeautifulSoup #解析网页的库
- root_url = 'http://www.manmankan.com/dy2013/mingxing/tupian/201305/2037.shtml' #爬虫的入口页面
- count = 1 #计数用
- my_path = 'D:/img_syz' #定义一个存图片的路径,下面的语句意思:这个路径不存在就创建,然后转到这个路径
- if not os.path.exists(my_path):
- os.mkdir(my_path)
- os.chdir(my_path)
- request = urllib2.Request(root_url)#用这个库打开我的入口页面
- request.add_header('user-agent', 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/22.0.1207.1 Safari/537.1')
- #添加一个访问头,用来模拟浏览器登录
- response = urllib2.urlopen(request)
- #把request传进去打开网页
- if response.getcode()== 200:#判断状态码!200表示打开成功,常见的还有404是网页不存在,503是服务器错误什么的,这个判断还是有必要的
- soup = BeautifulSoup(response.read(), 'html.parser', from_encoding='utf-8')
- #这个用beautifulsoup来解析网页
- img_urls = soup.find('ul',class_='zhaopianBox_p').find_all('img')
- #f12审查元素后找到img的标签如上
- for img_url in img_urls:#这个循环就是存图片的了!
- count += 1
- src = img_url['data-original']
- print src
- #print src[:-6]
- name = 'syz'+str(count)
- with open(name+'.jpg','ab') as img_obj:#图片这类要用二进制b模式打开,打开方式神么的请百度
- img_content = urllib2.urlopen(src[:-6]+'.jpg').read()
- img_obj.write(img_content)
- img_obj.flush()
爬虫爬取的是漫漫看网站的明星图,通过修改入口url可以实现爬取这个站任何一个明星的所有图片(对只想要东西的小白说的话)。通过加入一个url集合,稍微分析一下url的规律,把全站的明星url放进去基本可以实现全站明星的抓取,具体的我就不说了,这个小进阶完全可以自己实现,我只是给个方向...当然我不会说本博主实现了该站全部女明星的写真集抓取,,,,啧啧啧,
好了,希望大家通过这个对py有一定的理解,其实不要把爬虫想的那么难,难是难在进阶,难在它有太多的坑要填,对于拿来玩一玩是绰绰有余的,逻辑基本在任何语言里都是想通的,毕竟什么语言都只是工具嘛,主要是实现的方式....