- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Scrapy 和 XPath 选择器抓取网页。我已经使用 chrome 测试了我的 XPath 选择器。看来我的蜘蛛抓取了零个页面并抓取了 0 个项目。我该怎么做才能纠正它?我从抓取中得到以下输出:
$ scrapy crawl stack
2015-08-24 21:11:55 [scrapy] INFO: Scrapy 1.0.3 started (bot: stack)
2015-08-24 21:11:55 [scrapy] INFO: Optional features available: ssl, http11
2015-08-24 21:11:55 [scrapy] INFO: Overridden settings: {'NEWSPIDER_MODULE': 'st
ack.spiders', 'SPIDER_MODULES': ['stack.spiders'], 'BOT_NAME': 'stack'}
2015-08-24 21:11:56 [scrapy] INFO: Enabled extensions: CloseSpider, TelnetConsole, LogStats, CoreStats, SpiderState
2015-08-24 21:11:56 [scrapy] INFO: Enabled downloader middlewares: HttpAuthMiddleware, DownloadTimeoutMiddleware, UserAgentMiddleware, RetryMiddleware, DefaultHeadersMiddleware, MetaRefreshMiddleware, HttpCompressionMiddleware, RedirectMiddleware, CookiesMiddleware, ChunkedTransferMiddleware, DownloaderStats
2015-08-24 21:11:56 [scrapy] INFO: Enabled spider middlewares: HttpErrorMiddleware, OffsiteMiddleware, RefererMiddleware, UrlLengthMiddleware, DepthMiddleware
2015-08-24 21:11:56 [scrapy] INFO: Enabled item pipelines:
2015-08-24 21:11:56 [scrapy] INFO: Spider opened
2015-08-24 21:11:56 [scrapy] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2015-08-24 21:11:56 [scrapy] DEBUG: Telnet console listening on 127.0.0.1:6023
2015-08-24 21:11:56 [scrapy] DEBUG: Crawled (200) <GET http://www.cofman.com/search.php?country=DK#areaid=100001&areatxt=Danmark&country=DK&zoom=6&startDate=2015-08-29&endDate=2015-09-05&fuzzy=false> (referer: None)
2015-08-24 21:11:56 [scrapy] DEBUG: Scraped from <200 http://www.cofman.com/search.php?country=DK>
{'by': [], 'husnr': [], 'periode': [], 'pris': []}
2015-08-24 21:11:56 [scrapy] INFO: Closing spider (finished)
2015-08-24 21:11:56 [scrapy] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 233,
'downloader/request_count': 1,
'downloader/request_method_count/GET': 1,
'downloader/response_bytes': 6059,
'downloader/response_count': 1,
'downloader/response_status_count/200': 1,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2015, 8, 24, 19, 11, 56, 875000),
'item_scraped_count': 1,
'log_count/DEBUG': 3,
'log_count/INFO': 7,
'response_received_count': 1,
'scheduler/dequeued': 1,
'scheduler/dequeued/memory': 1,
'scheduler/enqueued': 1,
'scheduler/enqueued/memory': 1,
'start_time': datetime.datetime(2015, 8, 24, 19, 11, 56, 390000)}
2015-08-24 21:11:56 [scrapy] INFO: Spider closed (finished)
这是我的蜘蛛:
from scrapy import Spider
from scrapy.selector import Selector
from stack.items import StackItem
class StackSpider(Spider):
name = "stack"
allowed_domains = ["cofman.com"]
start_urls = [
"http://www.cofman.com/search.php?country=DK#areaid=100001&areatxt=Danmark&country=DK&zoom=6&startDate=2015-08-29&endDate=2015-09-05&fuzzy=false",
]
def parse(self, response):
questions = Selector(response).xpath('//*[@id="content"]/div[4]')
for question in questions:
item = StackItem()
item['husnr'] = question.xpath(
'//*[@id="resultListning"]/div/div/div[1]/a/small').extract()
item['pris'] = question.xpath(
'//*[@id="resultListning"]/div/div/div[5]/div/div[1]//*/span[@class="formatted_price"]').extract()
item['by'] = question.xpath(
'//*[@id="resultListning"]/div/div/div[1]/a/text()').extract()
item['periode'] = question.xpath(
'//*[@id="mapNavigation"]/table/tbody/tr/td[1]/div/text()').extract()
yield item
最后是我的 items.py:
from scrapy.item import Item, Field
class StackItem(Item):
husnr = Field()
pris = Field()
by = Field()
periode = Field()
最佳答案
Scrapy 运行良好。但是,您尝试抓取的页面通过 Javascript 获取其内容。 Scrapy 永远不会得到你想要抓取的内容。
>>> Selector(response).xpath('//div[@id="resultListning"]').extract()
[u'<div id="resultListning"></div>']
您需要找出它从何处获取数据并从该来源获取数据,或者您需要使用各种呈现 JS 的方法中的任何一种。
关于python - Scrapy 调试 : Crawled (200),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32190222/
我想从 Amazon S3 下载 WAT 存档段的子集。 背景: 搜索 http://index.commoncrawl.org 处的 Common Crawl 索引会生成包含有关 AWS S3 上
我已经安装了完全分布式的 Hadoop 1.2.1。我试图通过以下步骤集成 nutch: 下载apache-nutch-1.9-src.zip 在nutch-site.xml中添加值http.agen
我尝试使用 nutch 2.1 抓取一些网址,如下所示。 bin/nutch crawl urls -dir crawl -depth 3 -topN 5 http://wiki.apache.org
就目前情况而言,这个问题不太适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。如果您觉得这个问题可以改进并可能重新开放,visit
我正在尝试发现本地存储库中安装的原型(prototype)。我读到可以运行以下命令: mvn archetype:crawl 现在,当我运行此命令时,我收到此错误: [ERROR] Faile
我正在使用 Rcrawler 来抓取 url 向量。对于大多数人来说,它运行良好,但时不时地他们中的一个人不会被抓取。起初我只是在 https://网站上注意到这一点,该网站的地址为 here 。但我
看了“Why Johnny Can’t Pentest: An Analysis of Black-box Web Vulnerability Scanners”,了解到有些网站,比如日历应用,爬虫很
在一个有多个爬虫的 scrapy 项目中,输入 scrapy crawl 时的制表符补全非常慢(约 5 秒)。有什么方法可以在尝试运行时禁用制表符补全 scrapy crawl ? 最佳答案 scr
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
我是 python 的新手。我在 64 位操作系统上运行 python 2.7.3 32 位版本。 (我尝试了 64 位,但它没有锻炼)。 我按照教程在我的机器上安装了scrapy。我创建了一个项目,
有谁知道如何创建“文本抓取”,如 iPhone 版 ESPN ScoreCenter 应用程序底部所示的那样? 基本上,屏幕底部有一小段文本,并且文本是动画的,以便它在屏幕上从右向左缓慢移动。 任何人
我正在尝试提取有关 kaggle 提供的各种比赛的数据。 我尝试通过 shell 以及代码从网站获取数据,但失败了。我尝试将 HTTPERROR_ALLOWED_CODES = [404] 添加到se
无法让 scrapy 教程工作。 我正在尝试学习 scrapy,但甚至无法运行教程。我尝试在 python 3.7 和 3.5.5 中运行它,得到相同的结果 导入scrapy 类 QuotesSpid
我在一个 scrapy 项目中编写了一个爬行蜘蛛,它可以正确地从 url 中抓取数据并将响应通过管道传输到 postgresql 表中,但仅当使用 scrapy crawl 命令时。当蜘蛛从项目根目录
您好,我想使用 Scrapy CrawlSpider 类 (Documentation here) 抓取 Web 的所有页面。 class MySpider(CrawlSpider): nam
我正在尝试使用 Scrapy 和 XPath 选择器抓取网页。我已经使用 chrome 测试了我的 XPath 选择器。看来我的蜘蛛抓取了零个页面并抓取了 0 个项目。我该怎么做才能纠正它?我从抓取中
下面项目中常用的爬取索引文件 https://github.com/trivio/common_crawl_index/blob/master/bin/remote_copy mmap = BotoM
我有带 2 个数据节点服务器的 nutch/hadoop。我尝试抓取一些网址,但 nutch 失败并出现此错误: Fetcher: segment: crawl/segments Fetcher: o
这可能是 Passing arguments to process.crawl in Scrapy python 的子问题但作者将答案(没有回答我问自己的子问题)标记为令人满意的答案。 这是我的问题:
出于开发目的,我想在第一个异常(在蜘蛛或管道中)发生后立即停止所有抓取事件。 有什么建议吗? 最佳答案 在蜘蛛中,你可以直接抛出 CloseSpider异常(exception)。 def parse
我是一名优秀的程序员,十分优秀!