python 爬虫下载图片
使用的第三方库:urllib2,urllib,bs4
步骤:
1.打开网页,获取源码
相关问题
*网页禁止爬虫(反爬虫机制)[获取不到内容,请求失败,ip容易被封]
解决方法:伪装(加上浏览器相关信息)
2.获取图片
3.下载
相关内容
*字符串格式化(占位符)
4.多页下载
*range()(生成一个数列(含头不含尾))
代码
# -*- coding:utf8 -*-
#导入第三方库
import urllib
import urllib2
from bs4 import BeautifulSoup
#1.打开网页获取源码(需要爬的网页网址)
#以www.wmpic.me为例
url = 'http://www.wmpic.me'
#定义全局变量x
x = 0
#定义函数
def crawl(url):
#获取浏览器头部信息
headers = (#在网页上获取的 user-Agent内容)
#伪装成浏览器
req = urllib2.Request(url,headers = herders)
#打开网页
page = urllib2.urlopen(req)
#阅读网页内容
contents = page.read()
print contents
#创建一个soup 对象
soup = BeautifulSoup(contents,'html.parser')
#找到所有img标签
photos = soup.find_all('img')
#循环遍历网址
for photo in photos
#获取全局变量
global x
#获取网址
link = photo.get('src')
print link
#下载文件
urllib.urlretrieve(link,'下载文件存储路径/%s.jpg',%x)
x+=1
print "正在下载第%s张"%x
#调用函数
crawl(url)