我的 Scrappy 项目对象有问题。当前的问题是,当我抓取某些字段时,我会像这样保存它们:
item['tag'] = response.xpath("//div[contains(@class, 'video-info-row showLess')]"
"//a[contains(@href, '/video/search?search')]/text()").extract()
每次传递都会抓取多个标签并将其保存到 item['tag'] 中。然后我将标签上传到我的 SQL 服务器并收到 mySQL 语法错误。问题非常明显,因为它试图插入类似以下内容:'tag1'、u'tag2'、u'tag3'、u'tag4'、u'tag5'、u'tag6'
。无论如何,有没有办法去掉引号,因为我已经尝试过 .replace("' ", "") 但它不起作用。
最佳答案
您需要设置Join()
该特定字段的输出处理器:
import scrapy
from scrapy.contrib.loader.processor import Join
class MyItem(scrapy.Item):
my_field = scrapy.Field(output_processor=Join(separator=','))
关于python - scrapy item 对象错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24977355/