Scrapy, Splash and Connection была отклонена другой стороной: 10061 - PullRequest
0 голосов
/ 10 марта 2019

Я использую scrapy с заставкой на сайте, управляемом Javascript.Однако я не могу получить ошибку Connection was refused by other side: 10061.

Я получаю журналы, подобные этому:

[scrapy.downloadermiddlewares.retry] DEBUG: Retrying 
 <GET https://www2.deloitte.com/ch/en/misc/search.html#country=All#qr=accounting     
 via http://localhost:8050/render.html> (failed 1 times): Connection 
 was refused by other side: 10061: No connection could be made because 
 the target machine actively refused it..

и трассировку, указывающую на витую:

twisted.internet.error.ConnectionRefusedError: Connection was refused 
by other side: 10061: No connection could be made because the target 
machine actively refused it..

Я проверил все записи в настройках, пробовал различные записи USER_AGENTS и ROBOT, но не повезло.Также пытался использовать --disable-private-mode, чтобы запустить всплеск, но безрезультатно.

Странно, но просто скопируйте и вставьте тот же URL в браузер.

Я использовал обычную копирование командной строки, а также через API.Интересно, что при использовании API, конечно, щелкая URL-адрес цели в сообщении об ошибке в PyCharm, хэштег # заменяется его escape-кодом.Поэтому я не понимаю, является ли это другой проблемой, или же они связаны друг с другом.

Даже пытался посмотреть на пакеты, отправленные через Wireshark и Fiddler, но не смог понять результаты достаточно хорошо, так как я никогда раньше не использовал эти инструменты.

Любые предложения будут очень полезныоценили.

1 Ответ

1 голос
/ 10 марта 2019

Наконец-то удалось выявить виновника.Это было действительно соединение с док-контейнером.

Сначала мне пришлось получить IP-адрес контейнера докера, используя

docker-machine ip

в док-терминале.Затем мне пришлось настроить SPLASH_URL в файле scrapy settings.py, чтобы он указывал на ip док-машины вместо localhost:8050, и вуаля ... это работает.

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

...