На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: RaD
  
    > Twiter. Много раз рандомно зафоловить (following) Python Selenium
      Есть страница в фолловерами (followers). Какие команды нужно написать команды чтобы:

      1) Зафоловить всех кто есть, на странице, не нажимать если уже когда то раньше зафоловилк

      2) Рандомно зафоловить из (1000 к примеру) найденых 100 штук.
      *3) Зафоловить в зависимости сколько у этого пользователя фолловеров (если к примеру больше 1000, то фолловить). Скорее всего надо зайти из списка фолловеров на каждый аккаунт и потом вернуться обратно

      Прикреплённый файлПрикреплённый файлScreenshot_1.jpg (83,09 Кбайт, скачиваний: 583)


      ExpandedWrap disabled
        # -*- coding: utf-8 -*-
        from selenium import webdriver
            from selenium.webdriver.common.by import By
        from selenium.webdriver.common.keys import Keys
        from selenium.webdriver.support.ui import Select
        from selenium.common.exceptions import NoSuchElementException
        from selenium.common.exceptions import NoAlertPresentException
        import unittest, re, time,random,datetime,os,errno,traceback;
         
         
         
         
         
         
        wait_1 = 3
         
         
        def test_app_dynamics_job():
            try:
                login = 'login' #login
                password = 'password' #password
                dop = 'dop' #dop
            
            except Exception as exc:
                print(' № ошибка!')
                print(exc)
                traceback.print_exc()
                
         
         
            driver = webdriver.Chrome()
            ################!!!!!!!!########### ! НАЧАЛО вставка кода с коммандами селениум
         
            driver.get('https://twitter.com/login')
         
            time.sleep(wait_1 + 3)
            print('зашел на сайт...')
            driver.find_element_by_xpath("(//input[@name='session[username_or_email]'])[2]").send_keys(login)
            time.sleep(wait_1 + 3)
            driver.find_element_by_xpath("(//input[@name='session[password]'])[2]").send_keys(password)
            time.sleep(wait_1 + 3)
            driver.find_element_by_xpath(u"(.//*[normalize-space(text()) and normalize-space(.)='Войти'])[2]/following::button[1]").click()
         
            
            time.sleep(wait_1 + 3)
            
         
            #если вылезает дополнительный вопрос
            try:
                
                driver.find_element_by_id("challenge_response").send_keys(dop)
                driver.find_element_by_id("email_challenge_submit").click()
                
            except Exception as exc:
                print(exc)
                traceback.print_exc()
         
         
         
            #_+_+_+_+_+_
            #пробуем нажать на одну из конопок если выходит, лишние кнопки
            try:
                try:
                    driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Welcome!'])[1]/following::span[6]").click()
                except Exception as exc:
                    print(exc)
                    traceback.print_exc()
                try:
                    driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Lights out'])[1]/following::span[2]").click()
                except Exception as exc:
                    print(exc)
                    traceback.print_exc()
                #окно пишеться новые правила и все такое. Нажать на ОК
                try:
                    driver.find_element_by_xpath(u"(.//*[normalize-space(text()) and normalize-space(.)='will be in effect. Now’s a great chance to review them.'])[1]/following::span[3]").click()
                except Exception as exc:
                    print(exc)
                    traceback.print_exc()
            except Exception as exc:
                print(exc)
                traceback.print_exc()        
                #другие комманды
          
           #start
            
            #element.
            #/html/body/div/div/div/div/main/div/div/div/div[1]/div/div[4]/div/div/section/div/div/div/div[12]/div/article/div/div[2]/div[2]/div[4]/div[3]/div/div/div[2]
            #/html/body/div[1]/div/div/div/main/div/div/div/div[1]/div/div[4]/div/div/section/div/div/div/div[12]/div/article/div/div[2]/div[2]/div[4]/div[3]/div/div/div[2]/span/span
            #>MATCH><div class="css-1dbjc4n r-xoduu5 r-1udh0
                                    
                    
                    
                        
                        #_+_+_+_+_+_
            
                    
                    
                    
                  
         
        try:
            test_app_dynamics_job()
            
        except Exception as exc:
            print(exc)
            traceback.print_exc()
      Сообщение отредактировано: leon_hacker -
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0166 ]   [ 16 queries used ]   [ Generated: 29.03.24, 09:03 GMT ]