Ich suche nach Möglichkeiten, alle Tabellen auf einer bestimmten Website zu kratzen. Die Tabellen sind in allen Unterseiten identisch formatiert. Das Problem ist, die URLs dieser Unterseiten sind auf diese Weise:
url1 = 'http .../Tom',
url2 = 'http .../Mary',
url3 = ‚http .../Jason ', so dass ich keine Schleife setzen kann, indem ich die URL schrittweise verändere. Gibt es irgendwelche Möglichkeiten, dies durch Pandas zu lösen?Kann man mit Pandas HTML-Tabellen über mehrere Webseiten scrappen?
Antwort
wäre eine andere Idee, erste BeautifulSoup
Bibliothek zu verwenden und alle table
Elemente von einer Webseite und dann pd.read_html()
bewerbe ich mich, dass die Daten auf jeder Seite davon ausgehen, werden als HTML-table
Elemente tatsächlich formatiert und sein kann verarbeitet von Pandas. (Natürlich sind viele Seite zeigt, die wie Tabellen sehen sind HTML nicht table
Elemente, sondern auch zu überprüfen.)
der Code dann eine Tabelle zu verarbeiten aussehen könnte dies folgendermaßen aus:
df = pd.read_html(url, header=0)[0]
oder dies:
df = pd.read_html(url)[0]
ich gehe davon aus, dass es auf jeder der Seiten nur eine Tabelle von Interesse ist. In der Tat könnten Sie auch feststellen, dass andere Parameter von read_html
möglicherweise variiert werden müssen.
Dann wird der vollständige Code würde wie folgt sein:
stub_url = 'http:// ...'
dfs = []
for ending in ['Tom', 'Mary', 'Jason']:
one_df = pd.read_html(stub_url + ending, header=0)[0]
dfs[ending] = one_df
Schätzen Sie das. Leider bin ich Ihrem Code gefolgt, aber es gibt zurück als: Liste Indizes müssen ganze Zahlen oder Scheiben sein, nicht str. –
Sorry, versuchen Sie es jetzt. –
- 1. Mehrere Seiten scrappen/crawlen
- 2. Wie kann ich Daten über mehrere Webseiten speichern?
- 3. Gibt es eine einfachere Möglichkeit, ein Wörterbuch zu verwenden, um mehrere Webseiten zu scrappen?
- 4. Pandas bedeuten über mehrere Spalten
- 5. Iterieren über mehrere Datenrahmen Pandas
- 6. Pandas suchen mehrere Spalte String über
- 7. Wie man mehrere Trendlinien pandas
- 8. Wie man mehrere Seiten schneller und effizienter in Python scrappen kann
- 9. Ist es möglich, eine "dynamische Webseite" mit beautifulsoup zu scrappen?
- 10. Browserbasiertes clientseitiges Scrappen
- 11. manipulieren Webseiten mit Javascript
- 12. Abrufen von Webseiten über https
- 13. Im Frühling MockMVC testet, wie man mehrere Webseiten besucht?
- 14. Ist es möglich, Webseiten ohne Python-Bibliotheken von Drittanbietern zu scrappen?
- 15. Wie kann man auf Webseiten-Textdaten dynamisch zum Systemprozess zugreifen?
- 16. Pandas erstellen mehrere Aggregationen
- 17. Wie ein einzelnes Fragment halten mehrere Webseiten
- 18. Crawling mehrere Webseiten von einer Website
- 19. Wie man große Webseiten rendert
- 20. Pandas - Expandierender Z-Score über mehrere Spalten hinweg
- 21. Mehrere Spalten mit Pandas teilen
- 22. Passwort geschütztes Forum scrappen in
- 23. Wie plottet man mehrere Reihen auf Pandas?
- 24. Python, Multithreads, Webseiten abrufen, Webseiten herunterladen
- 25. Umgang mit bildlastigen Webseiten
- 26. Mehrere Histogramme in Pandas
- 27. Wie man Webseiten programmatisch in pdf umwandelt?
- 28. Python Zugriff auf mehrere Webseiten gleichzeitig
- 29. Schleife zu kratzen mehrere Webseiten nicht looping
- 30. So erstellen Sie mehrere Webseiten mit einer IP-Adresse (apache2)
Sie im Voraus wissen Sie, was die Urls wird? Woher bekommst du die URLs? – jarcobi889
Wie benutzt man 'Pandas' beim Kratzen? –
Sie können versuchen, die pd.read_html() -Methode zu verwenden, aber ohne ein Beispiel der Seite zu haben, ist es schwierig, etwas Spezifisches zu empfehlen. Könnten Sie uns ein Beispiel geben? – omdv