首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Scrapy -如何跟踪起始url

Scrapy -如何跟踪起始url
EN

Stack Overflow用户
提问于 2016-09-19 19:56:23
回答 1查看 481关注 0票数 1

给定一个起始url池,我希望在parse_item()函数中标识原始url。

就我而言,抓取蜘蛛开始从初始的起始urls池中爬行,但在解析时,没有跟踪这些urls中的哪一个是初始urls。如何才能跟踪起点?

EN

回答 1

Stack Overflow用户

发布于 2016-09-19 22:25:46

如果您需要在爬行器中使用解析url,只需使用response.url:

代码语言:javascript
复制
def parse_item(self, response):
    print response.url 

但是如果你在爬虫之外需要它,我可以想到以下几种方法:

使用scrapy core api

  • You的
  1. 也可以使用操作系统命令从外部python模块调用scrapy core api
  2. You(显然不推荐这样做):

在scrapycaller.py中

代码语言:javascript
复制
from subprocess import call
urls = 'url1,url2'
cmd = 'scrapy crawl myspider -a myurls={}'.format(urls)
call(cmd, shell=True)

在myspider内部:

代码语言:javascript
复制
class mySpider(scrapy.Spider):
    def __init__(self, myurls=''):              
        self.start_urls = myurls.split(",") 
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39572599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档