无法获取该字段的Scrapy

2024-09-30 01:21:38 发布

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

我试图刮4个领域:形象,链接,名称,价格。你知道吗

此代码:

import scrapy
from scrapy import Request

#scrapy crawl jobs7 -o job7.csv -t csv
    class JobsSpider(scrapy.Spider):
        name = "jobs8"
        allowed_domains = ["vapedonia.com"]
        start_urls = ["https://www.vapedonia.com/11-mods-potencia-"]

        def parse(self, response):
            products = response.xpath('//div[@class="product-container clearfix"]')

            for product in products:
                image = product.xpath('div[@class="center_block"]/a/img/@src').extract_first()
                link = product.xpath('div[@class="center_block"]/a/@href').extract_first()
                name = product.xpath('div[@class="right_block"]/p/a/text()').extract_first()
                price = product.xpath('div[@class="right_block"]/div[@class="content_price"]/span[@class="price"]').extract_first()
                print image, link, name, price

获取错误。你知道吗

我一直在尝试使用检查工具和插件创建xpath表达式。我自己也试过了。它在网页中工作,但不在脚本中。你知道吗

我已经打了一段时间了,我不知道发生了什么。你知道吗

有人知道会发生什么吗?你知道吗

谢谢!你知道吗

PS:我得到的错误是: 2017-09-21 07:55:31 [发动机]信息:蜘蛛已打开 2017-09-21 07:55:31 [scrapy.extensions.logstats文件]信息:已爬网0页(以0页/分钟的速度),已爬网0项(以0项/分钟的速度) 2017-09-21 07:55:31 [scrapy.extensions.telnet]调试:Telnet控制台监听127.0.0.1:6023 2017-09-21 07:55:32 [发动机]调试:已爬网(200)https://www.vapedonia.com/robots.txt>;(参考:无) 2017-09-21 07:55:32 [发动机]调试:已爬网(200)https://www.vapedonia.com/11 mods potenia->;(参考:无) https://www.vapedonia.com/4688-home_default/-ipv-6x-azul-pionner4you.jpghttps://www.vapedonia.com/pionner4you/2075--ipv-6x-azul-pionner4you.htmlipv6xazul-PIONNER4YOU 2017年9月21日07:55:32[刮板]错误:蜘蛛错误处理https://www.vapedonia.com/11 mods potenia->;(参考:无) 回溯(最近一次呼叫): 文件“C:\Users\eric\Miniconda2\lib\site packages\twisted\internet\延迟.py“,第653行,在\u runCallbacks中” 当前结果=回拨(当前结果,*args,**千瓦) 文件“C:\Users\eric\Documents\Web Scraping\0-Projets\Scrapy-\projects\craigslist\craigslist\spiders\jobs8.py”,第18行,在parse中 打印图像、链接、名称、价格 文件“C:\Users\eric\Miniconda2\lib\encodings\cp850.py”,第12行,编码 返回codecs.charmap\u编码(输入、错误、编码映射) UnicodeEncodeError:“charmap”编解码器无法对位置26中的字符u“\u20ac”进行编码:字符映射到 2017-09-21 07:55:32 [发动机]信息:关闭卡盘(完成) 2017-09-21 07:55:32 [斯拉蒂.斯塔采集器]信息:倾倒垃圾统计:


Tags: httpsdivcomwww错误extractproductblock
1条回答
网友
1楼 · 发布于 2024-09-30 01:21:38

这是一个字符集的问题,我把这个:价格=产品.xpath('div[@class=“right\u block”]/div[@class=“content\u price”]/span[@class=“price”]')。提取\u first()。编码(“utf-8”)。你知道吗

对我来说,这是一个正确的解决方案,但可能是可以在文件级别进行设置。你知道吗

相关问题 更多 >

    热门问题