Selenium, Django, На Ubuntu 20.04 цифровой океан VPD
Я создал веб-скрапер и интегрировал его с Django. Все работает отлично. Теперь я хочу разместить это приложение Django с веб-скрапером на VPS, чтобы он мог получить доступ к нему в любом месте. Я использую gunicorn
и nginx
. Я попробовал это приложение Django с webdriver.remote()
, используя seleniumgrid
, оно прекрасно работает в моей обычной среде windows, но как только я поместил его на мой ubuntu vps, оно работает только в половине случаев - как будто все мои вещи Django доступны и работают, но когда мой django вызывает скрепер, он просто проходит без ответа.
def chromedriver_setup():
user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.50 Safari/537.36'
# proxies = proxies = [{"_id":"62cd1bf852694154bb14f2e7","ip":"178.32.148.251","anonymityLevel":"elite","asn":"AS16276","city":"Gravelines","country":"FR","created_at":"2022-07-12T07:00:08.515Z","google":True,"isp":"OVH SAS","lastChecked":1657848951,"latency":5.13,"org":"MICHOTTE Maxime","port":"8080","protocols":["socks4"], "speed":37,"updated_at":"2022-07-15T01:35:51.569Z" },{"_id":"60d613cdce5b3bb0e932edce","ip":"64.227.62.123","port":"80","anonymityLevel":"elite","asn":"AS14061","city":"Santa Clara","country":"US","created_at":"2021-06-25T17:35:09.953Z","google":True, "isp":"DigitalOcean, LLC","lastChecked":1657847332,"latency":153,"org":"DigitalOcean, LLC","protocols":["http"], "speed":306,"updated_at":"2022-07-15T01:08:52.862Z" ,"upTime":99.98473981382573,"upTimeSuccessCount":6552,"upTimeTryCount":6553}]
# random_ip = random.choice(proxies)
# PROXY = str(random_ip["ip"] + ":" + random_ip["port"])
option = webdriver.ChromeOptions()
option.add_argument("--headless")
option.add_argument(f'user-agent={user_agent}')
option.add_argument("--window-size=1920,1080")
option.add_argument("--start-maximized")
option.add_argument("--disable-gpu")
# # option.add_argument('--proxy-server=%s' % PROXY)
option.add_experimental_option("excludeSwitches", ["enable-automation"])
option.add_experimental_option('useAutomationExtension', False)
option.add_argument("--disable-blink-features=AutomationControlled")
option.add_experimental_option("detach", True)
print("chrome driver setup passed")
driver = webdriver.Remote(
command_executor='192.168.72.1:4444',
desired_capabilities = DesiredCapabilities.CHROME,
options=option,
)
return driver
Есть ли способ решить эту проблему или проверить?
Из предоставленной информации я действительно не могу вспомнить ничего, что могло бы вызвать проблему или что вам следует искать.
Что я могу предложить, однако, учитывая тот факт, что ваш скрепер отлично работает в среде windows, так это найти сервер windows вместо Linux и посмотреть, как все пойдет там.