樹莓派 之 爬蟲(Scrapy)

2021-09-20 04:24:47 字數 2199 閱讀 9424

跑爬蟲比較接近電影裡對hacker印象,輸入幾行**,程式就可以執行很久

剛好樹莓派已經預裝了python2,可以在樹莓派上體驗一下,另外爬蟲確實很實用,可以高效蒐集很多資訊,比複製貼上強了很多

而且scrapy門檻很低,幾個小時就能上手,得到你想要的資料

安裝:

安裝配置virtualenv:

建立名為scrapy的virtualenv

配置完之後會終端行首會顯示(scrapy)$,說明處於名為scrapy的virtualenv

使workon在重啟後依然有效:

新增以下內容至末尾:

virtualenv內安裝scrapy:

進入名為scrapy的virtualenv:

退出virtualenv:

簡單爬蟲示例:

單個的爬蟲檔案最關鍵是start_urls,以及返回的內容

比如你想抓取北京所有的7-11門店名稱及位置

先登入官**鋪資訊頁面,一共在8個區有店,滑鼠懸停觀察每個區的url,這樣start_urls就確定了

需要先獲取每個門店的url,用chrome瀏覽器右鍵審查門店鏈結,彈出視窗內右擊相應**位置 copy > copy xpath

得到: ...tr[1]/th/a

所以url表示式為:

補全即可得到完整url:

然後進入單個門店url檢視想獲取資訊的xpath

門店名稱為:

輸入:

711bj.py

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

import scrapy

class stackoverflowspider(scrapy.spider):

name = '711bj'

start_urls = [''] + \

[''] + \

[''] + \

[''] + \

[''] + \

[''] + \

[''] + \

['']

def parse(self, response):

for href in response.xpath('.//tr/th/a/@href'):

full_url = response.urljoin(href.extract())

yield scrapy.request(full_url, callback=self.parse_store)

def parse_store(self, response):

yield

儲存退出ctrl+x,提示是否儲存按 y

執行爬蟲:

檢視結果:

如果爬蟲被封,需要用ip**或者加入header

Python樹莓派 爬蟲心得

平台 樹莓派 linux 語言 python 搞乙個爬蟲都清楚是怎麼回事,我這裡玩過之後有下面的心得 為什麼要用樹莓派呢,省電啊,沒亂七八糟的桌面問題,可以一直開著。1.樹莓派上的磁碟寫入對於不同格式是有區別的,我試過跑ntfs,開10執行緒就完全卡死不動了,wa wait for io 很高。看了...

玩轉樹莓派之零 了解樹莓派

最近買了一塊樹莓派板子,想學習樹莓派玩法,如果您也跟我有一樣想法,那麼我們一起來學習吧,需要什麼基礎呢 一,樹莓派是什麼?樹莓派是世界上最小的卡片式電腦,具備pc電腦的一切,系統直接裝在t卡上,非常方便。正所謂麻雀雖小,五臟俱全。在pc能做的都能在樹莓派上做。分為rpi zero rpi a rpi...

樹莓派入門(一)之樹莓派簡介

準備寫一些樹莓派入門教程,本教程採用c語言教學。大概涉及樹莓派的gpio口的控制,樹莓派介紹,以及具體通過幾個例子使用gpio口。主要是針對樹莓派入門者。我們使用的wiringpi庫,所以我們只看wiringpi編碼,至於bcm編碼暫時不用管它。比如 我們要控制物理引腳8,它對應的wiringpi編...