亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Scrapy:python3下的第一次運行測試

dack / 2811人閱讀

摘要:,引言的架構(gòu)初探一文講解了的架構(gòu),本文就實際來安裝運行一下爬蟲。第一次運行的測試成功,接下來的工作接下來,我們將使用來實現(xiàn)網(wǎng)絡(luò)爬蟲,省掉對每個人工去生成和測試的工作量。,文檔修改歷史,首次發(fā)布

1,引言

《Scrapy的架構(gòu)初探》一文講解了Scrapy的架構(gòu),本文就實際來安裝運行一下Scrapy爬蟲。本文以官網(wǎng)的tutorial作為例子,完整的代碼可以在github上下載。

2,運行環(huán)境配置

本次測試的環(huán)境是:Windows10, Python3.4.3 32bit

安裝Scrapy : $ pip install Scrapy #實際安裝時,由于服務(wù)器狀態(tài)的不穩(wěn)定,出現(xiàn)好幾次中途退出的情況

3,編寫運行第一個Scrapy爬蟲

3.1. 生成一個新項目:tutorial

$ scrapy startproject tutorial

項目目錄結(jié)構(gòu)如下:

3.2. 定義要抓取的item

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

# Define here the models for your scraped items
#
# See documentation in:
# http://doc.scrapy.org/en/latest/topics/items.html

import scrapy

class DmozItem(scrapy.Item):
    title = scrapy.Field()
    link = scrapy.Field()
    desc = scrapy.Field()

3.3. 定義Spider

import scrapy
from tutorial.items import DmozItem

class DmozSpider(scrapy.Spider):
    name = "dmoz"
    allowed_domains = ["dmoz.org"]
    start_urls = [
        "http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",
        "http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
    ]

    def parse(self, response):
        for sel in response.xpath("http://ul/li"):
            item = DmozItem()
            item["title"] = sel.xpath("a/text()").extract()
            item["link"] = sel.xpath("a/@href").extract()
            item["desc"] = sel.xpath("text()").extract()
            yield item

3.4. 運行

$ scrapy crawl dmoz -o item.json

1) 結(jié)果報錯:
A) ImportError: cannot import name "_win32stdio"
B) ImportError: No module named "win32api"

2) 查錯過程:查看官方的FAQ和stackoverflow上的信息,原來是scrapy在python3上測試還不充分,還有小問題。

3) 解決過程:
A) 需要手工去下載twisted/internet下的 _win32stdio 和 _pollingfile,存放到python目錄的libsitepackagestwistedinternet下
B) 下載并安裝pywin32

再次運行,成功!在控制臺上可以看到scrapy的輸出信息,待運行完成退出后,到項目目錄打開結(jié)果文件items.json, 可以看到里面以json格式存儲的爬取結(jié)果。

[
{"title": ["        About       "], "desc": [" ", " "], "link": ["/docs/en/about.html"]},
{"title": ["   Become an Editor "], "desc": [" ", " "], "link": ["/docs/en/help/become.html"]},
{"title": ["            Suggest a Site          "], "desc": [" ", " "], "link": ["/docs/en/add.html"]},
{"title": [" Help             "], "desc": [" ", " "], "link": ["/docs/en/help/helpmain.html"]},
{"title": [" Login                       "], "desc": [" ", " "], "link": ["/editors/"]},
{"title": [], "desc": [" ", " Share via Facebook "], "link": []},
{"title": [], "desc": [" ", "  Share via Twitter  "], "link": []},
{"title": [], "desc": [" ", " Share via LinkedIn "], "link": []},
{"title": [], "desc": [" ", " Share via e-Mail   "], "link": []},
{"title": [], "desc": [" ", " "], "link": []},
{"title": [], "desc": [" ", "  "], "link": []},
{"title": ["        About       "], "desc": [" ", " "], "link": ["/docs/en/about.html"]},
{"title": ["   Become an Editor "], "desc": [" ", " "], "link": ["/docs/en/help/become.html"]},
{"title": ["            Suggest a Site          "], "desc": [" ", " "], "link": ["/docs/en/add.html"]},
{"title": [" Help             "], "desc": [" ", " "], "link": ["/docs/en/help/helpmain.html"]},
{"title": [" Login                       "], "desc": [" ", " "], "link": ["/editors/"]},
{"title": [], "desc": [" ", " Share via Facebook "], "link": []},
{"title": [], "desc": [" ", "  Share via Twitter  "], "link": []},
{"title": [], "desc": [" ", " Share via LinkedIn "], "link": []},
{"title": [], "desc": [" ", " Share via e-Mail   "], "link": []},
{"title": [], "desc": [" ", " "], "link": []},
{"title": [], "desc": [" ", "  "], "link": []}
]

第一次運行scrapy的測試成功

4,接下來的工作

接下來,我們將使用GooSeeker API來實現(xiàn)網(wǎng)絡(luò)爬蟲,省掉對每個item人工去生成和測試xpath的工作量。目前有2個計劃:

在gsExtractor中封裝一個方法:從xslt內(nèi)容中自動提取每個item的xpath

從gsExtractor的提取結(jié)果中自動提取每個item的結(jié)果

具體選擇哪個方案,將在接下來的實驗中確定,并發(fā)布到gsExtractor新版本中。

5,文檔修改歷史

2016-06-15:V1.0,首次發(fā)布

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/37998.html

相關(guān)文章

  • scrapy入門

    摘要:快速入門首先,初步要做的就是快速構(gòu)建一個爬蟲。然后把結(jié)果加入到一個隊列中。既然是入門,我們肯定是先關(guān)心我們需要的。 因為公司項目需求,需要做一個爬蟲。所以我一個python小白就被拉去做了爬蟲?;藘芍軙r間,拼拼湊湊總算趕出來了。所以寫個blog做個記錄。 快速入門 首先,初步要做的就是快速構(gòu)建一個爬蟲。 配置環(huán)境 Mac下安裝 1) 直接從官網(wǎng)下載 python下載官網(wǎng) 2) 是通過...

    CrazyCodes 評論0 收藏0
  • Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)---12、部署相關(guān)庫的安裝:Docker、Scrapyd

    摘要:阿里云安裝腳本安裝腳本兩個腳本可以任選其一,速度都非常不錯。推薦的加速器有和阿里云。阿里云不同平臺的鏡像加速方法配置可以參考的官方文檔。以上便是的安裝方式說明。上一篇文章網(wǎng)絡(luò)爬蟲實戰(zhàn)爬蟲框架的安裝下一篇文章網(wǎng)絡(luò)爬蟲實戰(zhàn)部署相關(guān)庫 上一篇文章:Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)---11、爬蟲框架的安裝:ScrapySplash、ScrapyRedis下一篇文章:Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)---...

    ityouknow 評論0 收藏0
  • Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)---10、爬蟲框架的安裝:PySpider、Scrapy

    摘要:所以如果對爬蟲有一定基礎(chǔ),上手框架是一種好的選擇。缺少包,使用安裝即可缺少包,使用安裝即可上一篇文章網(wǎng)絡(luò)爬蟲實戰(zhàn)爬取相關(guān)庫的安裝的安裝下一篇文章網(wǎng)絡(luò)爬蟲實戰(zhàn)爬蟲框架的安裝 上一篇文章:Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)---9、APP爬取相關(guān)庫的安裝:Appium的安裝下一篇文章:Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)---11、爬蟲框架的安裝:ScrapySplash、ScrapyRedis 我們直接...

    張憲坤 評論0 收藏0
  • scrapy入門教程——爬取豆瓣電影Top250!

    摘要:注意爬豆爬一定要加入選項,因為只要解析到網(wǎng)站的有,就會自動進行過濾處理,把處理結(jié)果分配到相應(yīng)的類別,但偏偏豆瓣里面的為空不需要分配,所以一定要關(guān)掉這個選項。 本課只針對python3環(huán)境下的Scrapy版本(即scrapy1.3+) 選取什么網(wǎng)站來爬取呢? 對于歪果人,上手練scrapy爬蟲的網(wǎng)站一般是官方練手網(wǎng)站 http://quotes.toscrape.com 我們中國人,當(dāng)然...

    senntyou 評論0 收藏0
  • Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)---13、部署相關(guān)庫ScrapydClient、ScrapydAPI

    摘要:相關(guān)鏈接使用說明安裝推薦使用安裝,命令如下驗證安裝安裝成功后會有一個可用命令,叫做,即部署命令。我們可以輸入如下測試命令測試是否安裝成功如果出現(xiàn)如圖類似輸出則證明已經(jīng)成功安裝圖運行結(jié)果在后文我們會詳細了解它的用法。 上一篇文章:Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)---12、部署相關(guān)庫的安裝:Docker、Scrapyd下一篇文章:Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)---14、部署相關(guān)庫的安裝:Scra...

    lolomaco 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<