scrapy 爬取桌布

2021-10-16 06:19:54 字數 2257 閱讀 5901

scrapy startproject bizhi

scrapy genspider bizhispider www.netbian.com

要爬取的桌布** **網域名稱www.netbian.com

新建python檔案run.py

from scrapy import cmdline

cmdline.execute(

'scrapy crawl bizhispider'

.split(

))

進入settings.py檔案

log_level =

'warning'

# 講日誌的輸出水平設定為警告水平。scrapy crawl 輸出的日誌太多看著難受

不設定的日誌輸出(下圖)太多太亂看著不方便不好找重點,設定後只有警告以上級別的輸出才會列印出來(警告、錯誤等)

進入settings.py設定

robotstxt_obey =

false

# 這個協議在書面上規定了爬蟲可爬取的內容範圍(只是一種口頭約定,沒有用技術手段限制),可以到**的根目錄下+/robots.txt檢視

進入settings.py設定

user_agent =
import scrapy

from scrapy import request

import requests

class

bizhispiderspider

(scrapy.spider)

: name =

'bizhispider'

# 爬蟲名稱

shulian =

0#allowed_domains = ['netbian.com/'] # 允許爬取的範圍,給注釋了不然二次請求的時候由於二次請求的**不在允許的範圍不能正確執行。另一種方法,還可以在rquest請求時加入dont_filter引數表示不對鏈結去重同時不受規定的範圍限制。

start_urls =

['']# 爬取的**

defparse

(self, response)

: hrefs = response.xpath(

'//*[@id="main"]/div/ul/li/a/@href'

).extract(

)# 爬取出第一幅圖的紅框部分得到每張桌布的二級頁面的鏈結(二級頁面的url)。

for href in hrefs[:-

1]: url = response.urljoin(href)

yield request(url=url, callback=self.delwith)

next_page = response.xpath(

"//div[@class='page']/a[@class='prev']/@href"

).extract(

) next_page = response.urljoin(next_page[-1

])# 拼接鏈結

yield request(url=next_page)

# 進行翻頁操作

爬取彼岸桌布

看到論壇上有人發,自己跟著敲了遍 有些地方進行了改動,學習了。coding utf 8 time 2020 6 17 18 24 author banshaohuan site file bizhi.py software pycharm import requests from bs4 impor...

scrapy 爬取流程

什麼時候到pipeline,什麼 時候到spider這個就不說了,這個是框架跳轉到的流程 關鍵是訪問之前要登入怎麼辦,資料還要注入呢 這是個列表,裡面就是爬取的鏈結了 我們前面爬取就只是寫了乙個,但是其實可以寫多個 鏈結又是怎麼訪問的呢 這東西你就可以手動提取鏈結返回了 這東西你就得好好注意了 從入...

scrapy 爬取小說

速度是相當的快的 爬取整站的 最後結果儲存至mongodb資料庫 pycharm開發還是很好用的 建立專案 scrapy startproject daomubiji 執行專案 scrapy crawl daomubi settings default request headers items t...