擅长:python、mysql、java
<p>为了使上面的解决方案能够工作,我必须使crawpsider从InitSpider继承,而不再从BaseSpider继承,方法是在不完整的源代码上更改以下内容。在scrapy/contrib/spiders/crawl.py文件中:</p>
<ol>
<li>添加:<code>from scrapy.contrib.spiders.init import InitSpider</code></li>
<li>将<code>class CrawlSpider(BaseSpider)</code>更改为<code>class CrawlSpider(InitSpider)</code></li>
</ol>
<p>否则蜘蛛就不会调用<code>init_request</code>方法。</p>
<p>还有其他更简单的方法吗?</p>