簡體   English   中英

如何從Scrapy起始網址中刪除多余的字符或符號?

[英]How to remove extra character or symbol from Scrapy start URL?

我有一個Scrapy蜘蛛,當我運行代碼時出現此錯誤

忽略響應<302 https://www.macys.com/ >:未處理或不允許HTTP狀態代碼

這是我的蜘蛛

import scrapy
import urllib.parse
import random

class MacysspiderSpider(scrapy.Spider):
    name = 'macysSpider'
    allowed_domains = ['macys.com']
    start_urls = ['https://macys.com']

    def parse(self, response):
        pass

我檢查了URL,然后在運行代碼時在URL末尾包含“>”

https://www.macys.com/ >

如何從起始網址中刪除此UTF-8?

不知道您在URL的哪兒找到了“>”,但是我認為這與問題無關。 您需要設置一些標題才能抓取該網站:

headers = {
    'authority': 'www.macys.com',
    'upgrade-insecure-requests': '1',
    'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36',
    'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
    'accept-encoding': 'gzip, deflate, br',
    'accept-language': 'en-GB,en;q=0.9,nl-BE;q=0.8,nl;q=0.7,ro-RO;q=0.6,ro;q=0.5,en-US;q=0.4',
}

要將這些更改應用到您的第一個請求中,可以按如下所示覆蓋start_requests方法:

def start_requests(self):
    for url in self.start_urls:
        yield Request(url, headers=self.headers)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM