Ich brauche eine Liste von URLs in einer CSV-Datei zu kratzen.Kratzen Sie mehrere URLs aus CSV mit Beautiful Soup & Python
Ich bin sehr neu für schöne Suppe
Ich brauche eine Liste von URLs in einer CSV-Datei zu kratzen.Kratzen Sie mehrere URLs aus CSV mit Beautiful Soup & Python
Ich bin sehr neu für schöne Suppe
Unter der Annahme, dass Ihre urls.csv
Datei wie folgt aussehen:
https://stackoverflow.com;code site;
https://steemit.com;block chain social site;
Der folgende Code funktioniert:
#!/usr/bin/python
# -*- coding: utf-8 -*-
from bs4 import BeautifulSoup #required to parse html
import requests #required to make request
#read file
with open('urls.csv','r') as f:
csv_raw_cont=f.read()
#split by line
split_csv=csv_raw_cont.split('\n')
#remove empty line
split_csv.remove('')
#specify separator
separator=";"
#iterate over each line
for each in split_csv:
#specify the row index
url_row_index=0 #in our csv example file the url is the first row so we set 0
#get the url
url = each.split(separator)[url_row_index]
#fetch content from server
html=requests.get(url).content
#soup fetched content
soup= BeautifulSoup(html)
#show title from soup
print soup.title.string
Ergebnis:
Stack Overflow - Where Developers Learn, Share, & Build Careers
Steemit
Weitere Informationen: beautifulsoup und requests
Bitte zeigen Sie uns Ihren Versuch :) – yash
Wahrscheinlich finden Sie keine exakte Lösung für * Ihren Code *. Zum Lesen einer CSV, zum Erstellen von HTTP-Anfragen und zum Parsen von HTML in Python gibt es jedoch viele Dokumentationen. Konzentrieren Sie sich darauf, nicht die spezifischen Möglichkeiten, die Ihr Code funktioniert –
Und wenn Sie sagen wollen, dass Sie Dinge gesucht haben, zeigen Sie, was nicht funktioniert, also werden wir Ihre Frage nicht als mögliche Duplikate von ihnen schließen –