diff options
author | jwansek <eddie.atten.ea29@gmail.com> | 2023-09-03 21:57:02 +0100 |
---|---|---|
committer | jwansek <eddie.atten.ea29@gmail.com> | 2023-09-03 21:57:02 +0100 |
commit | 47058e60b268f9799c8236121f44c640e826e8ac (patch) | |
tree | 5332a630469a9602573b2c60f5a80610ec21d7f2 /services.py | |
parent | 8c8990c84efe2bc22abb62322286b41220e9bbdf (diff) | |
download | boymoder.blog-47058e60b268f9799c8236121f44c640e826e8ac.tar.gz boymoder.blog-47058e60b268f9799c8236121f44c640e826e8ac.zip |
Added a way of detecting if rate limited
Diffstat (limited to 'services.py')
-rwxr-xr-x | services.py | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/services.py b/services.py index 0a10d34..221d36e 100755 --- a/services.py +++ b/services.py @@ -282,6 +282,10 @@ def scrape_nitter(username, get_until:int): print("Couldn't get any more tweets") scrape_new_pages = False break + except ConnectionError: + print("Rate limited, try again later") + scrape_new_pages = False + break try: @@ -299,6 +303,11 @@ def parse_tweet(tweet_url): # with open("2images.html", "r") as f: # tree = html.fromstring(f.read()) + rate_limited_elem = tree.xpath("/html/body/div/div/div/span") + if rate_limited_elem != []: + if rate_limited_elem[0].text == "Instance has been rate limited.": + raise ConnectionError("Instance has been rate limited.") + main_tweet_elem = tree.xpath('//*[@class="main-tweet"]')[0] dt_str = main_tweet_elem.xpath('//*[@class="tweet-published"]')[0].text @@ -309,7 +318,7 @@ def parse_tweet(tweet_url): replying_to = int(urllib.parse.urlparse(replying_to_elems[-1].get("href")).path.split("/")[-1]) else: replying_to = None - + images = [] images_elems = tree.xpath('//*[@class="main-tweet"]/div/div/div[3]/div/div/a/img') for image_elem in images_elems: @@ -324,6 +333,6 @@ def parse_tweet(tweet_url): if __name__ == "__main__": # print(get_trans_stats()) - print(scrape_nitter(CONFIG.get("twitter", "diary_account"), 1694624180405260291)) + print(scrape_nitter(CONFIG.get("twitter", "diary_account"), 1697430888617840909)) # print(parse_tweet("https://nitter.net/HONMISGENDERER/status/1694231618443981161#m")) |