最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Scrapy使用的基本流程與實(shí)例講解

 更新時(shí)間:2018年10月21日 09:04:43   作者:回憶不說(shuō)話  
今天小編就為大家分享一篇關(guān)于Scrapy使用的基本流程與實(shí)例講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

前面已經(jīng)介紹過(guò)如何創(chuàng)建scrapy的項(xiàng)目,和對(duì)項(xiàng)目中的文件功能的基本介紹。

這次,就來(lái)談?wù)勈褂玫幕玖鞒蹋?/p>

(1)首先第一點(diǎn),打開(kāi)終端,找到自己想要把scrapy工程創(chuàng)建的路徑。這里,我是建立在桌面上的。打開(kāi)終端,輸入:
cd Desktop 就進(jìn)入了桌面文件存儲(chǔ)位置。

(2)創(chuàng)建scrapy工程。終端輸入:scrapy startproject image

終端輸入:cd image

繼續(xù)輸入:scrapy genspider imageSpider pic.netbian.com

(3)在pycharm中打開(kāi)剛才桌面的文件,進(jìn)入settings.py設(shè)置爬蟲(chóng)規(guī)則??梢詫⒁?guī)則直接注釋掉,或者改為False。

(4) 回到爬蟲(chóng)文件。

更改start_url,將爬蟲(chóng)默認(rèn)的第一個(gè)網(wǎng)址更改為需要爬取的網(wǎng)站網(wǎng)址即可。

(5)下面就可以爬取數(shù)據(jù)了,這里選擇了下載圖片。

爬取完數(shù)據(jù)之后,要在存儲(chǔ)數(shù)據(jù)的items.py文件中傳輸給管道

接下來(lái)在爬蟲(chóng)文件中引入管道模型。

from ..items import ImageItem

在爬蟲(chóng)文件中的parse函數(shù)中使用在items.py文件中創(chuàng)建的數(shù)據(jù)模型。

item = ImageItem()

注意點(diǎn):

有時(shí)候在終端輸出的時(shí)候,如果返回內(nèi)容是scrapy.selector ,如果對(duì)象類型是scrapy.selector,那么這個(gè)對(duì)象可以被繼續(xù)迭代,也可以用xpath繼續(xù)尋找里面的內(nèi)容。

如果終端遇到這個(gè)問(wèn)題:

# ValueError:Missing scheme in request url:h

那么就需要使用extract()將xpath對(duì)象轉(zhuǎn)化成列表對(duì)象。而列表對(duì)象,可以繼續(xù)被迭代,但是不可以使用xpath來(lái)尋找里面的對(duì)象。

在下載之前還需要在settings.py文件中,對(duì)圖片下載的路徑和存儲(chǔ)位置進(jìn)行設(shè)置。

下面附代碼如下。僅有爬蟲(chóng)文件的代碼:

# -*- coding: utf-8 -*-
import scrapy
from ..items import ImageItem
class ImagespiderSpider(scrapy.Spider):
  name = 'imageSpider'
  allowed_domains = ['pic.netbian.com']
  start_urls = ['http://pic.netbian.com/4kmeinv/']
 
  def parse(self, response):
    img_list = response.xpath('//ul[@class="clearfix"]/li/a/img/@src')
    # 找到了很多src屬性值,現(xiàn)在進(jìn)行遍歷,分別使用每一個(gè)
    for img in img_list:
      # 使用在items.py中創(chuàng)建的數(shù)據(jù)模型item
      item = ImageItem()
      print('--------------------')
      img = img.extract()
      # 拼接圖片的url,得到完整的下載地址
      src = 'http://pic.netbian.com' +img
      # 將得到的數(shù)據(jù)放入到模型中
      # 因?yàn)槭窍螺d地址,所以要用列表包起來(lái),否則會(huì)報(bào)錯(cuò)。
      item['src'] = [src]
      yield item
    next_url = response.xpath('//div[@class="page"]/a[text()="下一頁(yè)"]/@href').extract()
    print('*****************************************************************')
    if len(next_url)!=0:
      url = 'http://pic.netbian.com'+next_url[0]
      # 將url傳給scrapy.Request 得到的結(jié)果繼續(xù)用self.parse進(jìn)行處理
      yield scrapy.Request(url=url,callback=self.parse)

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • python如何求2-1000內(nèi)的所有回文素?cái)?shù)

    python如何求2-1000內(nèi)的所有回文素?cái)?shù)

    這篇文章主要介紹了python如何求2-1000內(nèi)的所有回文素?cái)?shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 利用Python腳本批量生成SQL語(yǔ)句

    利用Python腳本批量生成SQL語(yǔ)句

    這篇文章主要介紹了利用Python腳本批量生成SQL語(yǔ)句,具有很好對(duì)參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-03-03
  • Python中安全地使用多進(jìn)程和多線程進(jìn)行數(shù)據(jù)共享

    Python中安全地使用多進(jìn)程和多線程進(jìn)行數(shù)據(jù)共享

    在并發(fā)編程中,有時(shí)多個(gè)線程或進(jìn)程需要訪問(wèn)共享的數(shù)據(jù),因此我們需要一些機(jī)制來(lái)確保數(shù)據(jù)的安全訪問(wèn),本文將從多線程和多進(jìn)程兩個(gè)角度探討Python如何安全地實(shí)現(xiàn)數(shù)據(jù)共享
    2024-12-12
  • 淺談django 模型類使用save()方法的好處與注意事項(xiàng)

    淺談django 模型類使用save()方法的好處與注意事項(xiàng)

    這篇文章主要介紹了淺談django 模型類使用save()方法的好處與注意事項(xiàng),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-03-03
  • Python中不同圖表的數(shù)據(jù)可視化的實(shí)現(xiàn)

    Python中不同圖表的數(shù)據(jù)可視化的實(shí)現(xiàn)

    數(shù)據(jù)可視化是以圖形格式呈現(xiàn)數(shù)據(jù)。它通過(guò)以簡(jiǎn)單易懂的格式匯總和呈現(xiàn)大量數(shù)據(jù),幫助人們理解數(shù)據(jù)的重要性,并有助于清晰有效地傳達(dá)信息。本文為大家準(zhǔn)備了Python實(shí)現(xiàn)不同圖表數(shù)據(jù)可視化的代碼,需要的可以參考一下
    2022-08-08
  • python遞歸法實(shí)現(xiàn)簡(jiǎn)易連連看小游戲

    python遞歸法實(shí)現(xiàn)簡(jiǎn)易連連看小游戲

    這篇文章主要為大家詳細(xì)介紹了python遞歸法實(shí)現(xiàn)簡(jiǎn)易連連看小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • python 下載m3u8視頻的示例代碼

    python 下載m3u8視頻的示例代碼

    這篇文章主要介紹了python 下載m3u8視頻的示例代碼,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-11-11
  • Django logging配置及使用詳解

    Django logging配置及使用詳解

    這篇文章主要介紹了Django logging配置及使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • python在windows下創(chuàng)建隱藏窗口子進(jìn)程的方法

    python在windows下創(chuàng)建隱藏窗口子進(jìn)程的方法

    這篇文章主要介紹了python在windows下創(chuàng)建隱藏窗口子進(jìn)程的方法,涉及Python使用subprocess模塊操作進(jìn)程的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • pyqt5 QListWidget的用法解析

    pyqt5 QListWidget的用法解析

    這篇文章主要介紹了pyqt5 QListWidget的用法解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03

最新評(píng)論

囊谦县| 渭南市| 苏尼特左旗| 东方市| 东辽县| 绥阳县| 揭阳市| 洛南县| 武冈市| 砚山县| 阳信县| 青海省| 红原县| 昭通市| 辽宁省| 罗甸县| 张家川| 大宁县| 永仁县| 华亭县| 专栏| 静海县| 松江区| 将乐县| 石台县| 绍兴县| 武夷山市| 民权县| 津南区| 山阳县| 竹山县| 德昌县| 南澳县| 大丰市| 张掖市| 湘乡市| 临汾市| 称多县| 安达市| 堆龙德庆县| 安顺市|