Ich habe einen Python-Code, der die Überschrift und den ersten Absatz einer BBC-Nachricht zurückgibt, aber derzeit muss ich den Link liefern. Hier ist der Code:Python - Scrapping eine Überschrift von einer URL, aber die URL stammt von Benutzereingabe
from lxml import html
import requests
response = requests.get('http://www.bbc.co.uk/news/business-40660355')
if (response.status_code == 200):
pagehtml = html.fromstring(response.text)
news1 = pagehtml.xpath('//h1[@class="story-body__h1"]/text()')
news2 = pagehtml.xpath('//p[@class="story-body__introduction"]/text()')
print("\n".join(news1) + " (BBC News)")
print("\n".join(news2))
Aber dieser Code stützt sich auf mich die URL in das requests.get Coping ('') Bit.
Hier ist mein Versuch, es auf eine Änderung für die Benutzereingabe zu ermöglichen:
from lxml import html
import requests
response = input()
if (response.status_code == 200):
pagehtml = html.fromstring(response.text)
news1 = pagehtml.xpath('//h1[@class="story-body__h1"]/text()')
news2 = pagehtml.xpath('//p[@class="story-body__introduction"]/text()')
print("\n".join(news1) + " (BBC News)")
print("\n".join(news2))
Aber leider, dass der folgende Fehler zurückgegeben hat:
http://www.bbc.co.uk/news/world-europe-40825668
Traceback (most recent call last):
File "myscript2.py", line 5, in <module>
response = input()
File "<string>", line 1
http://www.bbc.co.uk/news/world-europe-40825668
^
SyntaxError: invalid syntax
Ich habe mich gefragt, ob jemand, der beste Weg wusste zu Lassen Sie diesen Code arbeiten, indem Sie eine Eingabe vornehmen, anstatt sich darauf zu verlassen, dass der Benutzer den Code ändert, um die Informationen aus der URL zu erhalten.
Dank
Sie wollen 'raw_input', es sei denn, Sie verwenden python3. – jordanm
Auch würde ich sagen, Sie wollen etwas in der Form von: 'response = requests.get (input())' – tmarice
Hallo @jordanm, ich benutze Python 3.5 danke –