1. 程式人生 > >使用scrapy簡單爬取圖片並儲存

使用scrapy簡單爬取圖片並儲存

# -*- coding: utf-8 -*-
import scrapy


class Tu699Spider(scrapy.Spider):
    name = 'tu_699'
    allowed_domains = ['699pic.com']
    start_urls = ['http://699pic.com/people.html']

    def parse(self, response):
        li_list = response.xpath("//div[@class='swipeboxEx']/div")
        item = {}
        for li in li_list:
            # 獲取圖片url
            item["img_url"] = li.xpath("./a/img/@data-original").extract_first()
            # 獲取圖片名稱
            item["img_name"] = li.xpath("./a/img/@title").extract_first()
            yield item
        # 獲取下一頁
        url = response.xpath("//a[@class='downPage']/@href").extract_first()
        # 判斷是否為空
        if url is not None:
            # 下一頁拼接
            next_url = "http://699pic.com/" + url
            # 傳送下一頁請求
            yield scrapy.Request(next_url, callback=self.parse)

pipelines

# -*- coding: utf-8 -*-

# Define your item pipelines here
#
# Don't forget to add your pipeline to the ITEM_PIPELINES setting
# See: http://doc.scrapy.org/en/latest/topics/item-pipeline.html
import re
import requests

class XiaohuarPipeline(object):
    def process_item(self, item, spider):
# 對圖片的名稱進行簡單的處理
        item["img_name"] = re.sub(r"圖片下載", "", item["img_name"])
# 傳送圖片連結請求
        item["img"] = requests.get(item["img_url"])
# 儲存
        name = "tu_699/" + item["img_name"] + ".jpg"
        with open(name, 'wb') as f:
            f.write(item["img"].content)
        return item

settings 網站沒有什麼反扒措施 把ROBOTSTXT_OBEY該為False就好了

3.最後說明

剛學爬蟲沒多久 第一次嘗試爬取圖片 網上看其他人寫的感覺有點複雜 直接自己安裝思路寫了個 路子有點野  還好完成了 有什麼問題歡迎留言指出 共同進步(第一次寫部落格 比較渣 偷笑

相關推薦

使用scrapy簡單圖片儲存

# -*- coding: utf-8 -*- import scrapy class Tu699Spider(scrapy.Spider): name = 'tu_699' allowed_domains = ['699pic.com'] start_urls = ['http:

Scrapy圖片儲存

Scrapy提供了一個 item pipeline ,來下載屬於某個特定專案的圖片,比如,當你抓取產品時,也想把它們的圖片下載到本地。本文接豆瓣top250電影,爬取海報圖片。   一、Images

第一個小爬蟲--圖片儲存

import urllib.request import re import os def url_open(url): req=urllib.request.Request(url) req.add_header('User-Agent','

爬蟲:圖片儲存在某路徑下

import re import urllib.request def getHtml(url): page=urllib.request.urlopen(url) html=page.read() return html def getImg(html):

python爬蟲 圖片儲存

今天爬了美麗說網站首頁的圖片 可是等把圖片的url獲取之後卻不知道怎麼儲存了。。(感覺自己當時腦子短路了) 然後自己上網查看了一些方法。。 1.網上有說 urllib模組中有個urlretrieve函式可以直接下載儲存,於是我天真的寫了urllib.urlretrieve

scrapy圖片自定義圖片名字

  前言      Scrapy使用ImagesPipeline類中函式get_media_requests下載到圖片後,預設的圖片命名為圖片下載連結的雜湊值,例如:它的下載連結是,雜湊值為7710759a8e3444c8d28ba81a4421ed,那麼最終的圖片下載到指定路徑後名稱為771075

[python學習] 簡單圖片站點圖庫中圖片

ctu while 要去 文章 ava ges file cor nal 近期老師讓學習Python與維基百科相關的知識,無聊之中用Python簡單做了個爬取“遊訊網圖庫”中的圖片,由於每次點擊下一張感覺很浪費時間又繁瑣。主要分享的是怎樣爬取HTML

Python簡單圖片例項

都知道Python的語法很簡單易上手,也很適合拿來做爬蟲等等,這裡就簡單講解一下爬蟲入門——簡單地爬取下載網站圖片。 效果 就像這樣自動爬取下載圖片到本地: 程式碼: 其實很簡單,我們直接看下整體的程式碼: #coding = utf-

Python3.6實現scrapy框架資料將資料插入MySQL與存入文件中

# -*- coding: utf-8 -*- # Define your item pipelines here # # Don't forget to add your pipeline to the ITEM_PIPELINES setting # See: http://doc.scrapy.org

Python爬蟲-利用百度地圖API介面資料儲存至MySQL資料庫

首先,我這裡有一份相關城市以及該城市的公園數量的txt檔案: 其次,利用百度地圖API提供的介面爬取城市公園的相關資訊。 所利用的API介面有兩個: 1、http://api.map.baidu.com/place/v2/search?q=公園&

爬蟲:圖片保存在某路徑下

page err space print ont quest erro += .html import re import urllib.request def getHtml(url): page=urllib.request.urlopen(url)

基於selenium圖片轉存到百度網盤

初學python,花了一天時間鼓搗了一個爬蟲。#coding=utf-8 import requests from bs4 import BeautifulSoup import re import string from selenium import webdriver

[Python][爬蟲03]requests+BeautifulSoup例項:抓圖片儲存

    上一篇中,安裝和初步使用了requests+BeautifulSoup,感受到了它們的便捷。但之前我們抓取的都是文字資訊,這次我們準備來抓取的是圖片資訊。 >第一個例項     首先,審查網頁元素:     因此其結構就為: <di

圖片存入資料夾中

import urllib.request import urllib.parse import redef handler_url(page,base_url): url = base_url + str(page) + '/' headers = {

爬蟲記錄(4)——多執行緒圖片下載

還是繼續前幾篇文章的程式碼。 當我們需要爬取的圖片量級比較大的時候,就需要多執行緒爬取下載了。這裡我們用到forkjoin pool來處理併發。 1、DownloadTask下載任務類 package com.dyw.crawler.util;

python爬蟲由淺入深1-從網頁中檔案儲存至本地

學過python語法的基礎,由此將由淺入深地進行以此python爬蟲的相關知識點的梳理 從網頁中爬取檔案並儲存至本地 import requests import os url = "http://image.nationalgeographic.com.cn/2017

Scrapy框架的學習(2.scrapy入門,簡單頁面,使用管道(pipelines)儲存資料)

上個部落格寫了:  Scrapy的概念以及Scrapy的詳細工作流程 https://blog.csdn.net/wei18791957243/article/details/86154068 1.scrapy的安裝  pip install scrapy

爬蟲記錄(2)——簡單一個頁面的圖片儲存

1、爬蟲工具類,用來獲取網頁內容 package com.dyw.crawler.util; import java.io.BufferedReader; import java.io.IOException; import java.io.

使用Scrapy圖片入庫,儲存在本地

使用Scrapy爬取圖片入庫,並儲存在本地 上 篇部落格已經簡單的介紹了爬取資料流程,現在讓我們繼續學習scrapy     目標: 爬取愛卡汽車標題,價格以及圖片存入資料庫,並存圖到本地   好了不多說,讓我們實現下效果   我們仍用scrapy框架來編寫我們的專案

使用scrapy框架蜂鳥論壇的攝影圖片下載到本地

utf 賦值 col 異常處理 創建文件夾 clas watermark follow ret 目標網站:http://bbs.fengniao.com/使用框架:scrapy 因為有很多模塊的方法都還不是很熟悉,所有本次爬蟲有很多代碼都用得比較笨,希望各位讀者能給處意見