Когда я использую Scrapy для сканирования веб-данных, он отвечает на отладку 204 и отладку «данные не получены!»Я использовал этот код для сканирования многих данных, но на этот раз он не работает.Я не знаю почему.
Код и обратная связь ниже.
class SoccerSpider(scrapy.Spider):
name = 'soccer'
start_urls = [
'https://www.transfermarkt.com/wettbewerbe/europa']
def parse(self, response):
soup = BeautifulSoup(response.body, 'html.parser')
tags = soup.find_all('a', href=re.compile(r'.*/startseite/wettbewerb/.*'))
print(tags)
for tag in tags[:14]:
url = re.findall(r'https://www.transfermarkt.com/.+', response.urljoin(tag.get('href')))
if len(url) == 0:
continue
else:
yield scrapy.Request(url[0], callback=self.parse1, dont_filter=True)
Обратная связь ниже:
2019-05-01 17:16:38 [scrapy.core.engine] DEBUG: Crawled (204) <GET https://www.transfermarkt.com/robots.txt> (referer: http://www.web.cn/)
2019-05-01 17:16:38 [scrapy.core.engine] DEBUG: Crawled (204) <GET https://www.transfermarkt.com/wettbewerbe/europa> (referer: http://www.web.cn/)
2019-05-01 17:16:38 [chardet.universaldetector] DEBUG: no data received!
2019-05-01 17:16:38 [chardet.universaldetector] DEBUG: no data received!
Установочный заголовок такой, как показано ниже
DEFAULT_REQUEST_HEADERS = {
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language': 'en',
'Accept-Encoding': 'gzip, deflate',
'Connection': 'keep-alive',
'host': 'www.web.cn',
'Referer': 'http://www.web.cn/',
'Cookie': 'is cookis'
}