您好男人和女孩,XPath/Scrapy刮DOCTYPE
我正在構建一個使用Scrapy和XPath的刮板。我感興趣的是從我遍歷的所有站點獲取DOCTYPE,並且我很難找到關於此的文檔,並且覺得它應該是可能的,因爲它是一個相對簡單的請求。有什麼建議麼?
乾杯,
喬伊
下面是代碼,我到目前爲止有:
import scrapy
from scrapy.selector import HtmlXPathSelector
from scrapy.http import HtmlResponse
from tutorial.items import DanishItem
from scrapy.http import Request
import csv
class DanishSpider(scrapy.Spider):
name = "dmoz"
allowed_domains = []
start_urls = [very long list of websites]
def parse(self, response):
for sel in response.xpath(???):
item = DanishItem()
item['website'] = response
item['DOCTYPE'] = sel.xpath('????').extract()
yield item
新蜘蛛,檢索DOCTYPE但由於某種原因將打印我到指定上傳.json響應文件15次而不是一次
class DanishSpider(scrapy.Spider):
name = "dmoz"
allowed_domains = []
start_urls = ["http://wwww.example.com"]
def parse(self, response):
for sel in response.selector._root.getroottree().docinfo.doctype:
el = response.selector._root.getroottree().docinfo.doctype
item = DanishItem()
item['website'] = response
item['doctype'] = el
yield item
這很好用!只有我現在看不出來的東西是爲什麼我得到的響應寫入我的.json文件15次而不是一次,請參閱上面的編輯 – 2014-12-19 11:40:27
檢查我的更新答案。 – bosnjak 2014-12-19 12:07:02
謝謝您的詳細解釋!這很好:) – 2014-12-19 13:05:02