所有
我正在尝试完全自动化我的抓取,这是由3个步骤组成的:
1-获取广告的索引页面列表(非scrapy工作,出于各种原因) 2-从步骤1(Scrapy work)中获取的索引页面中获取广告URL列表
我的scrapy项目位于通常的目录中:
C:\ Python27 \脚本\ GetAdUrlsFromIndex_project \ GetAdUrlsFromIndex \蜘蛛\ GetAdUrls_spider.py (“GetAdUrls_spider”文件中的蜘蛛名称是(name =“getadurls”))
我自动执行步骤1和2的脚本位于以下目录中:
C:\ Website_DATA \脚本\ StepByStepLauncher.py
我尝试使用Scrapy文档导入搜寻器并使用以下代码从脚本内部运行:
from twisted.internet import reactor
from scrapy.crawler import Crawler
from scrapy.settings import Settings
from scrapy import log
from GetAdUrlsFromIndex.spiders.GetAdUrls_spider import getadurls
spider = getadurls(domain='website.com')
crawler = Crawler(Settings())
crawler.configure()
crawler.crawl(spider)
crawler.start()
log.start()
reactor.run() # the script will block here
当我尝试运行此脚本时,我不断收到错误“没有名为GetAdUrlsFromIndex.spiders.GetAdUrls_spider的模块”。我尝试将工作目录更改为几个不同的位置,我玩了一些名字,似乎没什么用。
非常感谢任何帮助..谢谢!
答案 0 :(得分:0)
如果__init__.py
和C:\Python27\Scripts\GetAdUrlsFromIndex_project\GetAdUrlsFromIndex
中有C:\Python27\Scripts\GetAdUrlsFromIndex_project\GetAdUrlsFromIndex\spiders
,请尝试以这种方式修改脚本
import sys
from twisted.internet import reactor
from scrapy.crawler import Crawler
from scrapy.settings import Settings
from scrapy import log
sys.path.append('C:/Python27/Scripts/GetAdUrlsFromIndex_project')
from GetAdUrlsFromIndex.spiders.GetAdUrls_spider import getadurls
spider = getadurls(domain='website.com')
crawler = Crawler(Settings())
crawler.configure()
crawler.crawl(spider)
crawler.start()
log.start()
reactor.run() # the script will block here