bocchilorenzo / ntscraper

Scrape from Twitter using Nitter instances
MIT License
181 stars 29 forks source link

Problema nella funzione get_tweets #2

Closed redfalcoon closed 1 year ago

redfalcoon commented 1 year ago

Buongiorno, utilizzando gli ottimi sviluppi da lei realizzati di ntscraper ricevo i seguentei errori:

user_tweets = scraper.get_tweets(user, mode='user', number=posts, instance="https://nitter.it") Traceback (most recent call last): File "", line 1, in File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 572, in get_tweets return self.search(term, mode, number, since, until, max_retries, instance) File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 491, in __search to_append = self.extract_tweet(tweet, is_encrypted) File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 409, in extract_tweet if quoted_tweet File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 345, in get_tweet_link return "https://twitter.com" + tweet.find("a")["href"] TypeError: 'NoneType' object is not subscriptable

oppure

File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 572, in get_tweets return self.search(term, mode, number, since, until, max_retries, instance) File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 491, in __search to_append = self.extract_tweet(tweet, is_encrypted) File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 409, in extract_tweet if quoted_tweet File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 335, in get_tweettext else tweet.find("div", class="quote-text").text.strip().replace("\n", " ") AttributeError: 'NoneType' object has no attribute 'text'

nella richiesta che genera il primo errore user='romafaschifo' e posts=70. (Facendo tentativi con post < 70 non si hanno errori.) nella richiesta che genera il secondo errore user='romaesaurito' e posts=10 con altri utenti l'errore non appare la versione installata è quella ora disponibile su Github. Grazie Saluti

bocchilorenzo commented 1 year ago

Buongiorno, il bug è stato sistemato, la invito a scaricare la nuova versione. L'errore che viene generato per l'utente 'romaesaurito' accade perché l'utente apparentemente non esiste e non viene trovato da nessuna istanza di Nitter.

redfalcoon commented 1 year ago

Buongiorno, grazie per l'intervento di risoluzione per il primo dei due casi, come giustamente indicato romaesaurito non esiste infatti è romanoesaurito e se si prova a fare uno scraping si ottiene l'errore che segue

Traceback (most recent call last): chiamata user_tweets = scraper.get_tweets(user, mode='user', number=posts, instance="https://nitter.it") File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 574, in get_tweets return self.search(term, mode, number, since, until, max_retries, instance) File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 494, in __search to_append = self.extract_tweet(tweet, is_encrypted) File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 412, in extract_tweet if quoted_tweet File "/usr/local/lib/python3.6/site-packages/ntscraper/nitter.py", line 335, in get_tweettext else tweet.find("div", class="quote-text").text.strip().replace("\n", " ") AttributeError: 'NoneType' object has no attribute 'text'

anche con la nuova versione del sw. Grazie

bocchilorenzo commented 1 year ago

L'ultimo fix ha sistemato il bug. La re-invito a scaricare l'ultima versione.

redfalcoon commented 1 year ago

La ringrazio, veramente efficace e gentile. Volevo approfittare per segnalare che da qualche giorno le istanze nitter rispondono anche alla richiesta di hashtag e term fornendo risultato, i test fatti con ntscraper in merito sono veramente confortanti..