Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Search scrapy不将数据导出到弹性搜索_Search_Scrapy_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Search,Scrapy,elasticsearch" /> elasticsearch,Search,Scrapy,elasticsearch" />

Search scrapy不将数据导出到弹性搜索

Search scrapy不将数据导出到弹性搜索,search,scrapy,elasticsearch,Search,Scrapy,elasticsearch,我想在ElasticSearch中为我的项目编制索引,我发现 但如果我试图对站点进行爬网,则会出现以下错误: 文件“/usr/lib/python2.7/dist packages/twisted/internet/defer.py”,第577行,在runCallbacks中 current.result=回调(current.result,*args,**kw) 文件“/usr/local/lib/python2.7/dist packages/scrapyelasticsearch/scra

我想在ElasticSearch中为我的项目编制索引,我发现

但如果我试图对站点进行爬网,则会出现以下错误:

文件“/usr/lib/python2.7/dist packages/twisted/internet/defer.py”,第577行,在runCallbacks中 current.result=回调(current.result,*args,**kw) 文件“/usr/local/lib/python2.7/dist packages/scrapyelasticsearch/scrapyelasticsearch.py”,第70行,处理中项目 自索引项目(项目) 文件“/usr/local/lib/python2.7/dist packages/scrapyelasticsearch/scrapyelasticsearch.py”,第52行,在索引项中 local_id=hashlib.sha1(项[uniq_键]).hexdigest() 文件“/home/javed/.local/lib/python2.7/site packages/scrapy/item.py”,第50行,在getitem 返回self.\u值[键] exceptions.KeyError:“url”


既然你没有粘贴你的蜘蛛代码,我只能假设。 一个假设是您没有在项目中设置所需的字段。他们需要在
ELASTICSEARCH\u UNIQ\u KEY
中指定一个字段,并且该字段必须是唯一的。最简单的方法可能是使用
url

# somewhere deep in your callback, 
# where you create and yield your item
...
myitem['url'] = response.url
return myitem
并确保在
设置.py中设置:

ELASTICSEARCH_UNIQ_KEY = 'url'

我只是在我的settings.py文件中对该字段进行了注释(根据需要,该字段是可选的)

#ELASTICSEARCH_UNIQ_KEY = 'url'  # Custom unique key