Python简单爬虫图片

作者: Search_ | 来源:发表于2017-08-29 17:43 被阅读0次

利用Python进行简单的一些图片网站爬虫。

我们分为三部分来完成这个爬虫
获取页数的url - 解析页面的HTLM - 下载图片

PAGE的url是这样的:www.91doutu.com/category/qq表情包/page/1
我们可以用for循环来遍历出我们需要爬虫的页数。

BASE_PAGE_URL = 'http://www.91doutu.com/category/qq%E8%A1%A8%E6%83%85%E5%8C%85/page/'
for i in range(0,11):
    print BASE_PAGE_URL + str(i)

这样就获取到了我们需要的page_url了。

PAGE_URL

接下来我们来完成第二步

解析页面的HTML源码 获取我们需要的部分。

#encoding
import requests
from bs4 import BeautifulSoup

response = requests.get('http://www.91doutu.com/category/qq%E8%A1%A8%E6%83%85%E5%8C%85')
content = response.content
soup = BeautifulSoup(content,'lxml')
img_list = soup.find_all('img',attrs={'class':'thumb'})
for img in img_list:
    print img['data-src']

这样就获取到了我们需要的图片url了。

Img_List

第三步-下载

只需要用到一个函数就轻轻松松搞定。

首先分割url 取list最后一个元素来当做我们的文件名,然后再下载到images目录下。

#encoding
import requests
from bs4 import BeautifulSoup
import os
import urllib

def download_image(url):
    split_list = url.split('/')
    filename = split_list.pop()
    path = os.path.join('images',filename)
    urllib.urlretrieve(url,filename=path)

response = requests.get('http://www.91doutu.com/category/qq%E8%A1%A8%E6%83%85%E5%8C%85')
content = response.content
soup = BeautifulSoup(content,'lxml')
img_list = soup.find_all('img',attrs={'class':'thumb'})
for img in img_list:
    url = img['data-src']
    download_image(url)
download_img

完整的Code:

#encoding
#_PlugName_ = Spider_Img
#__Author__ = Search__
# @Time    : 2017/8/29
#__Refer___ = http://www.jianshu.com/u/d743d12d1d77

import requests
from bs4 import BeautifulSoup
import os
import urllib

BASE_PAGE_URL = 'http://www.91doutu.com/category/qq%E8%A1%A8%E6%83%85%E5%8C%85/page/'
PAGE_URL_LIST = []
for x in range(7,10):
    url = BASE_PAGE_URL + str(x)
    PAGE_URL_LIST.append(url)

def download_image(url):
    split_list = url.split('/')
    filename = split_list.pop()
    path = os.path.join('images',filename)
    urllib.urlretrieve(url,filename=path)

def get_page(page_url):
    response = requests.get(page_url)
    content = response.content
    soup = BeautifulSoup(content,'lxml')
    img_list = soup.find_all('img',attrs={'class':'thumb'})
    for img in img_list:
        url = img['data-src']
        download_image(url)

def main():
    for page_url in PAGE_URL_LIST:
        get_page(page_url)

if __name__ == "__main__":
    main()

相关文章

  • 各语言简单爬虫

    各语言简单爬虫 Python 简单爬虫 golang简单爬虫

  • Python简单图片爬虫

    经常在逛知乎,有时候希望把一些问题的图片集中保存起来。于是就有了这个程序。这是一个非常简单的图片爬虫程序,只能爬取...

  • Python简单爬虫图片

    利用Python进行简单的一些图片网站爬虫。 我们分为三部分来完成这个爬虫获取页数的url - 解析页面的HTLM...

  • Python网络爬虫

    Python开发简单爬虫(Python2.X版本,Eclipse工具) 一、爬虫介绍 爬虫调度端:启动、停止爬虫,...

  • java爬虫与python爬虫谁更强?

    java爬虫与python爬虫的对比: python做爬虫语法更简单,代码更简洁。java的语法比python严格...

  • Python学习

    python爬虫(六) python爬取图片素材 通过爬虫爬取图片的地址以及电影的名称,然后将图片素材命名为电影名...

  • python爬虫:用selenium控制浏览器,爬取蛋壳公寓租房

    上次我们讲了,如何爬取图片,大家可以点击链接查看。"python爬虫:用request最简单的代码爬取图片,以及X...

  • Python爬虫入门(01) -- 10行代码实现一个爬虫

    跟我学习Python爬虫系列开始啦。带你简单快速高效学习Python爬虫。 一、快速体验一个简单爬虫 以抓取简书首...

  • pyhone爬虫简单使用

    为了采集到大量图片进行图片分类的迁移学习,简单的学习下python爬虫技术,方便采集到大量图片提高效率 1.获取整...

  • urlretrieve获取图片的同时获取cookie值

    python爬虫获取图片比较方便的是用urllib库中的urlretrieve函数,语法简单: 但许多时候,获取图...

网友评论

    本文标题:Python简单爬虫图片

    本文链接:https://www.haomeiwen.com/subject/ygaodxtx.html