Действительно странное поведение при запуске функции, кодирование ее в оболочке работает, импорт функции не работает. - PullRequest
0 голосов
/ 19 июня 2020

Понятия не имею, что здесь происходит.

У меня есть класс, который выглядит примерно так:


class Scrape:
    def __init__(self, session, headers, proxies):
        self.session = session
        self.headers = headers
        self.proxies = proxies
        self.response = None

    def post(self, url):
        self.response = self.session.post(url, headers=self.headers, proxies=self.proxies, verify=False)

    def get(self, url):
        self.response = self.session.get(url, headers=self.headers, proxies=self.proxies, verify=False)

Затем у меня есть эта функция в другом файле,

import requests
from .config import *
from .scraper import Scrape
from .serializer import *
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)


def run():
    scrape = Scrape(requests.session(), headers, PROXIES)
    scrape.post(url)
    save = []
    for obj in scrape.parse_response():
        .......

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

urllib3.connection.HTTPConnection object at 0x7f69ccf34710>: Failed to establish a new connection: [Errno 110] Connection timed out',)))

Сначала я думал, что у моего сервера есть белые списки и прочее, НО если я это сделаю,

In [10]: from bots.roku.config import *

In [11]: import requests

In [12]: r = requests.session().post(url, headers, PROXIES)

In [13]: r
Out[13]: <Response [200]>

IT РАБОТАЕТ? Это не так,

In [5]: import requests

In [6]: scrape = Scrape(requests.Session(), headers, PROXIES)

In [7]: scrape
Out[7]: <bots.roku.scraper.Scrape at 0x7f69ccfaff60>

In [8]: scrape.get("http:\\www.google.com")
ProxyError: HTTPConnectionPool(host='170.130.63.178', port=8800): Max retries exceeded with url: http://www.google.com/ (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f69ccf34710>: Failed to establish a new connection: [Errno 110] Connection timed out',)))

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

Обновление: Я забыл добавить свой IP серверов к авторизованному IP-адресу прокси .....

...