scrapy выдает 500 внутренних ошибок сервера при попытке загрузить nepalstock.com - PullRequest
0 голосов
/ 07 апреля 2019

, когда я пытаюсь загрузить URL http://nepalstock.com/todaysprice в оболочку Scrapy, он возвращает 500 внутреннюю ошибку сервера.Любая причина, почему этот сайт, в частности, будет выдавать такую ​​ошибку?

Я уже пытался загрузить другие сайты, и все они нормально загружаются в оболочку.Я также попытался выполнить их с и без http.

scrapy shell 'http://nepalstock.com'

2019-04-07 12:09:41 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
2019-04-07 12:09:41 [scrapy.core.engine] INFO: Spider opened
2019-04-07 12:09:41 [scrapy.downloadermiddlewares.retry] DEBUG: Retrying <GET http://nepalstock.com/robots.txt> (failed 1 times): 500 Internal Server Error
2019-04-07 12:09:41 [scrapy.downloadermiddlewares.retry] DEBUG: Retrying <GET http://nepalstock.com/robots.txt> (failed 2 times): 500 Internal Server Error
2019-04-07 12:09:42 [scrapy.downloadermiddlewares.retry] DEBUG: Gave up retrying <GET http://nepalstock.com/robots.txt> (failed 3 times): 500 Internal Server Error
2019-04-07 12:09:42 [scrapy.core.engine] DEBUG: Crawled (500) <GET http://nepalstock.com/robots.txt> (referer: None)
2019-04-07 12:09:42 [scrapy.downloadermiddlewares.retry] DEBUG: Retrying <GET http://nepalstock.com> (failed 1 times): 500 Internal Server Error
2019-04-07 12:09:42 [scrapy.downloadermiddlewares.retry] DEBUG: Retrying <GET http://nepalstock.com> (failed 2 times): 500 Internal Server Error
2019-04-07 12:09:42 [scrapy.downloadermiddlewares.retry] DEBUG: Gave up retrying <GET http://nepalstock.com> (failed 3 times): 500 Internal Server Error
2019-04-07 12:09:42 [scrapy.core.engine] DEBUG: Crawled (500) <GET http://nepalstock.com> (referer: None)

1 Ответ

0 голосов
/ 07 апреля 2019

Любая причина, почему этот сайт, в частности, выдает такую ​​ошибку?

Заголовок User-Agent.

Многие сайты будут с ошибками отвечать на запросы пользовательских агентов, обычно используемых ботами. Пользовательский агент Scrapy по умолчанию равен Scrapy/VERSION (+https://scrapy.org), но вы можете установить для него другое значение.

$ scrapy shell
...
>>> req = scrapy.Request( 
    'http://nepalstock.com/todaysprice', 
    headers={'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:66.0) Gecko/20100101 Firefox/66.0'}, 
)                                                                                                                                                      
>>> fetch(req)                                                                                                                                         
2019-04-07 12:08:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET http://nepalstock.com/todaysprice> (referer: None)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...