- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我只提到了我在发布此问题之前提到的一些问题(我目前没有链接到我在发布此问题之前提到的所有这些问题)-:
如果我不传递参数并从 BBSpider 类中请求用户输入(没有 main 函数 - 在 name="dmoz"行下方),我可以完全运行此代码,或者将它们作为预定义(即静态)参数提供。
我的密码是here .
我基本上是在尝试从 Python 脚本执行 Scrapy 蜘蛛,而不需要任何其他文件(甚至是设置文件)。这就是为什么我也在代码本身内指定了设置。
这是我执行此脚本时得到的输出:
http://bigbasket.com/ps/?q=apple
2015-06-26 12:12:34 [scrapy] INFO: Scrapy 1.0.0 started (bot: scrapybot)
2015-06-26 12:12:34 [scrapy] INFO: Optional features available: ssl, http11
2015-06-26 12:12:34 [scrapy] INFO: Overridden settings: {}
2015-06-26 12:12:35 [scrapy] INFO: Enabled extensions: CloseSpider, TelnetConsole, LogStats, CoreStats, SpiderState
None
2015-06-26 12:12:35 [scrapy] INFO: Enabled downloader middlewares: HttpAuthMiddleware, DownloadTimeoutMiddleware, UserAgentMiddleware, RetryMiddleware, DefaultHeadersMiddleware, MetaRefreshMiddleware, HttpCompressionMiddleware, RedirectMiddleware, CookiesMiddleware, ChunkedTransferMiddleware, DownloaderStats
2015-06-26 12:12:35 [scrapy] INFO: Enabled spider middlewares: HttpErrorMiddleware, OffsiteMiddleware, RefererMiddleware, UrlLengthMiddleware, DepthMiddleware
2015-06-26 12:12:35 [scrapy] INFO: Enabled item pipelines:
2015-06-26 12:12:35 [scrapy] INFO: Spider opened
2015-06-26 12:12:35 [scrapy] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2015-06-26 12:12:35 [scrapy] DEBUG: Telnet console listening on 127.0.0.1:6023
2015-06-26 12:12:35 [scrapy] ERROR: Error while obtaining start requests
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/scrapy/core/engine.py", line 110, in _next_request
request = next(slot.start_requests)
File "/usr/local/lib/python2.7/dist-packages/scrapy/spiders/__init__.py", line 70, in start_requests
yield self.make_requests_from_url(url)
File "/usr/local/lib/python2.7/dist-packages/scrapy/spiders/__init__.py", line 73, in make_requests_from_url
return Request(url, dont_filter=True)
File "/usr/local/lib/python2.7/dist-packages/scrapy/http/request/__init__.py", line 24, in __init__
self._set_url(url)
File "/usr/local/lib/python2.7/dist-packages/scrapy/http/request/__init__.py", line 57, in _set_url
raise TypeError('Request url must be str or unicode, got %s:' % type(url).__name__)
TypeError: Request url must be str or unicode, got NoneType:
2015-06-26 12:12:35 [scrapy] INFO: Closing spider (finished)
2015-06-26 12:12:35 [scrapy] INFO: Dumping Scrapy stats:
{'finish_reason': 'finished',
'finish_time': datetime.datetime(2015, 6, 26, 6, 42, 35, 342543),
'log_count/DEBUG': 1,
'log_count/ERROR': 1,
'log_count/INFO': 7,
'start_time': datetime.datetime(2015, 6, 26, 6, 42, 35, 339158)}
2015-06-26 12:12:35 [scrapy] INFO: Spider closed (finished)
我目前面临的问题-:
http://bigbasket.com/ps/?q=apple
2015-06-26 12:28:00 [scrapy] INFO: Scrapy 1.0.0 started (bot: scrapybot)
2015-06-26 12:28:00 [scrapy] INFO: Optional features available: ssl, http11
2015-06-26 12:28:00 [scrapy] INFO: Overridden settings: {}
2015-06-26 12:28:00 [scrapy] INFO: Enabled extensions: CloseSpider, TelnetConsole, LogStats, CoreStats, SpiderState
None
2015-06-26 12:28:01 [scrapy] INFO: Enabled downloader middlewares: HttpAuthMiddleware, DownloadTimeoutMiddleware, UserAgentMiddleware, RetryMiddleware, DefaultHeadersMiddleware, MetaRefreshMiddleware, HttpCompressionMiddleware, RedirectMiddleware, CookiesMiddleware, ChunkedTransferMiddleware, DownloaderStats
2015-06-26 12:28:01 [scrapy] INFO: Enabled spider middlewares: HttpErrorMiddleware, OffsiteMiddleware, RefererMiddleware, UrlLengthMiddleware, DepthMiddleware
2015-06-26 12:28:01 [scrapy] INFO: Enabled item pipelines:
2015-06-26 12:28:01 [scrapy] INFO: Spider opened
2015-06-26 12:28:01 [scrapy] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2015-06-26 12:28:01 [scrapy] DEBUG: Telnet console listening on 127.0.0.1:6023
2015-06-26 12:28:01 [scrapy] ERROR: Error while obtaining start requests
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/scrapy/core/engine.py", line 110, in _next_request
request = next(slot.start_requests)
File "/usr/local/lib/python2.7/dist-packages/scrapy/spiders/__init__.py", line 70, in start_requests
yield self.make_requests_from_url(url)
File "/usr/local/lib/python2.7/dist-packages/scrapy/spiders/__init__.py", line 73, in make_requests_from_url
return Request(url, dont_filter=True)
File "/usr/local/lib/python2.7/dist-packages/scrapy/http/request/__init__.py", line 24, in __init__
self._set_url(url)
File "/usr/local/lib/python2.7/dist-packages/scrapy/http/request/__init__.py", line 59, in _set_url
raise ValueError('Missing scheme in request url: %s' % self._url)
ValueError: Missing scheme in request url: None
2015-06-26 12:28:01 [scrapy] INFO: Closing spider (finished)
2015-06-26 12:28:01 [scrapy] INFO: Dumping Scrapy stats:
{'finish_reason': 'finished',
'finish_time': datetime.datetime(2015, 6, 26, 6, 58, 1, 248350),
'log_count/DEBUG': 1,
'log_count/ERROR': 1,
'log_count/INFO': 7,
'start_time': datetime.datetime(2015, 6, 26, 6, 58, 1, 236056)}
2015-06-26 12:28:01 [scrapy] INFO: Spider closed (finished)
请帮我解决以上2个错误。
最佳答案
您需要在CrawlerProcess
的crawl
方法上传递您的参数,因此您需要像这样运行它:
crawler = CrawlerProcess(Settings())
crawler.crawl(BBSpider, start_url=url)
crawler.start()
关于python - 从 Python 脚本向 Scrapy Spider 传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31066959/
现在我有2个蜘蛛,我想做的是 Spider 1 转到 url1 如果 url2 出现,用 url2, ) 它加载设置但不抓取: 2015-08-24 14:13:32 [scrapy] INFO: E
我看到在他们使用的类末尾的一些蜘蛛文件中 class TestSpider(BaseSpider): pass SPIDER = TestSpider() 为什么我们要使用 SPIDER = T
我该如何解决这个错误? mona@pascal:~/computer_vision/instagram/instagram$ scrapy crawl instagramspider 2017-03-
很抱歉重新发布,我之前帖子的标题令人困惑。在蜘蛛示例(下面的代码)中,如何使用“pyinstaller”(或其他一些安装程序)来构建可执行文件(例如myspidy.exe),以便最终用户不需要在Win
我是python和scrapy的新手。我用了这个博客里的方法Running multiple scrapy spiders programmatically在 flask 应用程序中运行我的蜘蛛程序。
我们的 Meteor 版本是 0.8.1,这意味着当我们尝试安装当前版本的 Spiderable 时它会崩溃。PhantomJS 与这种不兼容有关,因为它有一些过时的依赖项,主要是关于 BlazeLa
我需要什么: 启动爬虫 爬虫工作完成 等一分钟 再次启动爬虫 我试试这个: from scrapy.crawler import CrawlerProcess from scrapy.utils.pr
我是一名学生,我正在为一个项目收集有关品牌的信息。我找到了这个名为 Kit 的网站:Kit Page我想搜索品牌。它有将近 500 页,我用 Python 3 编写了一个 Scrapy Spider,
我更新到 Spyder 4(4.0.0?)以获得最新、最强大的功能。这时我发现Spyder现在可以选择使用Kite进行自动补全。在尝试了 Kite 一段时间后,我想恢复到以前的自动完成设置。我认为通过
下面是我组装的一个 Scrapy 蜘蛛,用于从网页中提取一些元素。我从another Stack Overflow solution借用了这个解决方案。它有效,但我需要更多。我需要能够在身份验证后遍历
情况: 我想在我的 vps ubuntu 服务器上运行一些应用程序以进行爬网测试。我的应用使用来自“atmosphere”的 meteor-router 和 mrt 包管理器。在我使用 phantom
我正在尝试在此 SO 线程中使用“warwaruk”描述的链接解析结构: Following links, Scrapy web crawler framework 这在仅从每个页面抓取单个项目时效果
我正在编写一个 scrapy 蜘蛛从主页上抓取今天纽约时报的文章,但由于某种原因它不跟踪任何链接。当我在 scrapy shell http://www.nytimes.com 中实例化链接提取器时,
我已经看过类似的问题并尝试了给出的答案但无济于事。有人可以帮我纠正这个吗? 谢谢 hepz@ubuntu:~/Documents/project/project$ scrapy crawl NewsS
大家好,我正在尝试从代码中的给定链接获取完整结果。但我的代码没有给出所有结果。这个链接说它包含 2132 个结果,但它只返回 20 个结果。: from scrapy.spider import Sp
scrapyd 文档包括以下注释: scrapyd-deploy won’t deploy anything outside the project module... 这是否意味着我不能从我的蜘蛛中
我是 python 编程和 scrapy 的新手。我在网络爬行时遇到错误。我在这个网站上使用过类似的帮助页面,甚至从头到尾遵循了一个教程,但没有成功,任何帮助将不胜感激。 错误说:蜘蛛错误处理http
因此,当我尝试从 epinions.com 抓取产品评论信息时,如果主要评论文本太长,它会有一个指向另一个页面的“阅读更多”链接。我从“http://www.epinions.com/reviews/
我已阅读Scrapy: Follow link to get additional Item data?并遵循它,但它不起作用,可能这是一个简单的错误,所以我把我的蜘蛛的源代码。 import scr
我定义了一个scrapy Spider,它可以抓取所有名字和一些故事,而定义的xpath无法捕获故事,来自https://www.cancercarenorthwest.com/survivor-st
我是一名优秀的程序员,十分优秀!