0
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
import time


class Chrome(object):
    COOKIES = [{'domain': '.twitter.com', 'expiry': 1647358658, 'httpOnly': True, 'name': 'att', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': '1-6jaOD1R3g4knrJ5SfVDOjU0jx1f4cwjLMMhlHsoU'}, {'domain': '.twitter.com', 'expiry': 1694533057, 'httpOnly': True, 'name': 'kdt', 'path': '/', 'secure': True, 'value': 'nzFdwbUFZ6Dx0eK1077WJXG4P0OkQ3oezjNFwux2'}, {'domain': '.twitter.com', 'expiry': 1647283044, 'httpOnly': False, 'name': 'gt', 'path': '/', 'secure': True, 'value': '1503394868445409281'}, {'domain': '.twitter.com', 'expiry': 1710344243, 'httpOnly': False, 'name': '_ga', 'path': '/', 'secure': False, 'value': 'GA1.2.871867858.1647272244'}, {'domain': '.twitter.com', 'expiry': 1710344242, 'httpOnly': False, 'name': 'guest_id_ads', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': 'v1%3A164727224094081122'}, {'domain': '.twitter.com', 'expiry': 1678808258, 'httpOnly': False, 'name': 'twid', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': 'u%3D4505285172'}, {'domain': '.twitter.com', 'expiry': 1710344242, 'httpOnly': False, 'name': 'guest_id', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': 'v1%3A164727224094081122'}, {'domain': 'twitter.com', 'expiry': 1647358643, 'httpOnly': False, 'name': '_sl', 'path': '/', 'secure': True, 'value': '1'}, {'domain': '.twitter.com', 'expiry': 1647358643, 'httpOnly': False, 'name': '_gid', 'path': '/', 'secure': False, 'value': 'GA1.2.1316202114.1647272244'}, {'domain': '.twitter.com', 'expiry': 1710344242, 'httpOnly': False, 'name': 'personalization_id', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': '"v1_f1vUIIboOfu5PGTCvmB5Yg=="'}, {'domain': '.twitter.com', 'expiry': 1804952258, 'httpOnly': False, 'name': 'ct0', 'path': '/', 'sameSite': 'Lax', 'secure': True, 'value': '7e4e94eeee0bd02fff3b736c1f8b55ce5eafa10b5fe00dacd4b28cf072daf6fff5d5ed2f67fdaa5c53803941bf2e7b6a48864ba290653e5c15957e5797719d58666c64a1f8017a405bb89ff1d019fd29'}, {'domain': '.twitter.com', 'expiry': 1804952257, 'httpOnly': True, 'name': 'auth_token', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': 'a6336fa6a6380554a40922f0d1b6619d1add86f2'}, {'domain': '.twitter.com', 'httpOnly': True, 'name': '_twitter_sess', 'path': '/', 'secure': True, 'value': 'BAh7CSIKZmxhc2hJQzonQWN0aW9uQ29udHJvbGxlcjo6Rmxhc2g6OkZsYXNo%250ASGFzaHsABjoKQHVzZWR7ADoPY3JlYXRlZF9hdGwrCJGtE4l%252FAToMY3NyZl9p%250AZCIlZTQ5ZWEwMzAyMjVhMjgyMzU4YTJkZTJhNGRiZmM1YzE6B2lkIiVjMGJi%250AZWI4NmVjZjFkMDhiNjE5NjhmMWM0MDVlMDQxYQ%253D%253D--a3a76fd22b090ed8fa5bcd7e2aeee928ea2a651d'}, {'domain': '.twitter.com', 'expiry': 1710344242, 'httpOnly': False, 'name': 'guest_id_marketing', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': 'v1%3A164727224094081122'}]
    MAIN_URL = "https://twitter.com/"

    def __init__(self):
        self.driver = webdriver.Chrome(ChromeDriverManager().install())

    def login(self):
        self.driver.get(self.MAIN_URL)
        for cookie in self.COOKIES:
            self.driver.add_cookie(cookie)

    def sortUrl(self, url):
        return url.split("?")[0]

    def getRetweeters(self, url):
        self.driver.get(self.sortUrl(url) + "/retweets")

        while True:
            self.driver.execute_script("document.getElementsByClassName('css-1dbjc4n r-1867qdf r-1wbh5a2 r-kwpbio r-rsyp9y r-1pjcn9w r-1279nm1 r-htvplk r-1udh08x').scrollIntoView();")

    def getFavoriators(self, url):
        self.driver.get(url + "/likes")

target_url = "https://twitter.com/metakongz_G/status/1502223321009913857?t=PVLQS03E87nARHxbOMBjDQ&s=19"
c =Chrome()
c.login()
c.getRetweeters(target_url)

I 'm trying to scroll down the twitter's retweeter flex. However, it shows me an error. I found getElementsByClassName to find the flex pop up and scroll down, But, I don't know why It doesn't works.. How can I change my code?

심현규
  • 5
  • 1
  • Does this answer your question? [How can I scroll a web page using selenium webdriver in python?](https://stackoverflow.com/questions/20986631/how-can-i-scroll-a-web-page-using-selenium-webdriver-in-python) – xtekky Mar 14 '22 at 18:18

0 Answers0