如何将参数传递给管道.py在scrapy?

2024-04-20 04:20:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我的问题基本上是一个参数问题。 我有一个关于五只蜘蛛的小计划。 爬行器必须提取由用户输入的坐标分隔的地理区域内的信息。你知道吗

此时,区域多边形在中定义管道.py所有蜘蛛都会用。 问题是,如何将坐标作为参数从图形接口(tkinter)传递给是吗?你知道吗

`class My_Pipeline(object):
    gmaps_key =   googlemaps.Client(key='some_key')
    count = 0
    insidePolygon = 0
    polygon = [(-30.8377119, -64.6603737),
              (-31.5156532, -64.6699867),
              (-31.5507684, -64.4969520),
              (-31.4898937, -64.3349037),
              (-31.3503690, -64.3150073),
              (-31.3052314, -64.3352658),
              (-31.2659561, -64.3623695),
              (-30.9873456, -64.3994484),
              (-30.8412493, -64.4173012),
              (-30.8117674, -64.4763527),
              (-30.8117674, -64.5642433),
              (-30.8377119, -64.6603737)]`

该多边形必须由用户从图形界面输入的坐标替换。你知道吗


Tags: key用户py信息图形区域参数管道
1条回答
网友
1楼 · 发布于 2024-04-20 04:20:46

使用scrapy crawl myspider -a params="1,3,5,6"从命令行传递参数

class MySpider(scrapy.Spider):

    name = 'myspider'

    def __init__(self, 
                 params='can be anything',
                 * args, ** kwargs):

        self.params = params

        super(MySpider, self).__init__()

然后在你的管道里

class My_Pipeline(object):
    spider.params #read if like this

相关问题 更多 >