def parse_item(self, response):
for jobs in response.xpath('//div[@itemtype="http://schema.org/JobPosting"]'):
item = IndeedCoUkItem()
item["jobtitle"] = jobs.xpath('*[@class="jobtitle"]/a//text()').extract()
yield item项保存到CSV文件中,
职称
高级嵌入式软件工程师
嗨,
上面是我抓取的爬虫代码的一个片段。我想要输出的是逗号和空白处。即从“高级嵌入式软件工程师”到“高级嵌入式软件工程师”。我尝试使用..extract().replace(“、”、"")之类的替换(),但是它没有起作用。有什么帮助/建议吗?
发布于 2015-09-14 11:24:50
您是否尝试打印/记录进入item['jobtitle]字段的列表?如果它是一个列表(嗯,它是一个列表),那么导出到一个CSV文件将这个列表转换为一个逗号分隔的条目。
试着查看结果并将列表加入其中:
item["jobtitle"] = ' '.join(jobs.xpath('*[@class="jobtitle"]/a//text()').extract())如果项包含额外的空格,但不是全部,则可以在元素上使用map和strip:
item["jobtitle"] = ' '.join(map(unicode.strip,jobs.xpath('*[@class="jobtitle"]/a//text()').extract()))这将在开始和结束时遍历所有元素和strip的空白空间。
或者,您可以使用normalize-space of XPath:
item["jobtitle"] = ' '.join(jobs.xpath('normalize-space(*[@class="jobtitle"]/a//text())').extract())发布于 2015-09-14 11:23:48
item["jobtitle"] = (jobs.xpath('*[@class="jobtitle"]/a//text()').extract()).replace(',', '')https://stackoverflow.com/questions/32563463
复制相似问题