Ich würde gerne um Hilfe mit einem RSS-Programm bitten. Ich sammle Websites, die relevante Informationen für mein Projekt enthalten, und überprüfe, ob sie RSS-Feeds enthalten. Die Links werden in einer TXT-Datei gespeichert (ein Link in jeder Zeile). Also habe ich eine TXT-Datei mit voller Basis-URLs, die für RSS überprüft werden müssen.Öffne Links von TXT-Datei in Python
Ich habe diesen Code gefunden, der meine Arbeit viel einfacher machen würde.
import requests
from bs4 import BeautifulSoup
def get_rss_feed(website_url):
if website_url is None:
print("URL should not be null")
else:
source_code = requests.get(website_url)
plain_text = source_code.text
soup = BeautifulSoup(plain_text)
for link in soup.find_all("link", {"type" : "application/rss+xml"}):
href = link.get('href')
print("RSS feed for " + website_url + "is -->" + str(href))
get_rss_feed("http://www.extremetech.com/")
Aber ich mag meinen gesammelten URLs aus der txt-Datei öffnen, anstatt jeweils einzeln eingeben.
So habe ich tryed das Programm mit diesem erweitern:
from bs4 import BeautifulSoup, SoupStrainer
with open('test.txt','r') as f:
for link in BeautifulSoup(f.read(), parse_only=SoupStrainer('a')):
if link.has_attr('http'):
print(link['http'])
Aber dies mit einem Fehler zurückgibt, sagen, dass beautifoulsoup kein http-Client ist.
Ich habe auch mit dieser erweitert:
def open()
f = open("file.txt")
lines = f.readlines()
return lines
Aber das gab mir eine Liste mit „“ getrennt
Ich würde wirklich dankbar, wenn mir jemand helfen
danke für schnelle hilfe! Und wo soll ich den Speicherort der TXT-Datei definieren? – Platy
Wenn Sie Probleme bei der iterate durch Textdatei haben, chek dies: [http://stackoverflow.com/a/5733487/6495164] – danielarend