Selenium скрипт запускается локально, но когда я ставлю на сервер, он не работает - PullRequest
0 голосов
/ 26 января 2019

Я сделал селен со скриптом Python, который сканирует подписчиков Instagram ID, и он отлично работает локально. Но когда я пытаюсь запустить его на сервере, он не работает

Я пробовал и Chrome, и драйвер Firefox работать локально, но не на сервере. Ниже приведен код после загрузки идентификатора пользователя. до загрузки идентификатора пользователя работает нормально.

arrow = driver.find_element_by_xpath('//a[@class="-nal3 "]')
arrow.click()

follower = []

for i in tqdm(range(4), desc='scrolling for follower'):
    driver.save_screenshot('scrollingfollowers.png')
    if driver.find_elements_by_css_selector('h1.m82CD'):
        arrow1 = driver.find_element_by_class_name('isgrP')
        arrow1 = driver.find_element_by_tag_name("body")
        arrow1.click()
        time.sleep(0.2)
        arrow1.send_keys(Keys.SPACE)
    else:
        driver.back()
        arrow1 = driver.find_element_by_class_name('isgrP')
        arrow1 = driver.find_element_by_tag_name("body")
        arrow1.click()
        time.sleep(0.2)
        arrow1.send_keys(Keys.END)

html_source = driver.page_source
source_data = html_source.encode('utf-8')
soup = bs(source_data, 'lxml')
for div in soup.findAll('a', {'class': 'FPmhX notranslate _0imsa '}):
    if div.text not in follower:
        follower.append(div.text)

решаемые

Спасибо за ваш ответ, но я понял это. Проблема заключалась в том, что я использовал красивый суп, чтобы получить всю информацию о подписчиках. Он работал локально, но когда я запускал его на сервере, он не собирал эти данные. Я использовал сам селен, чтобы получить эти данные последователей

for i in tqdm(range(4),desc='scrolling for follower'):
            time.sleep(1)


            followersList = driver.find_element_by_css_selector('div[role=\'dialog\'] ul')
            numberOfFollowersInList = len(followersList.find_elements_by_css_selector('li'))
            if int(numberOfFollowersInList) > tenpercent:
                break

            followersList.click()

            actionChain.key_down(Keys.SPACE).perform()


        for user in followersList.find_elements_by_css_selector('li'):
            userLink = user.find_element_by_css_selector('a').get_attribute('href')
            getuser = userLink.split('/')
            print(getuser[3])
            follower.append(getuser[3])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...