Ich versuche, den Inhalt der Financial Times Search Seite zu kratzen.Python-Anfragen: Kann nicht den gesamten HTML-Code von einer Seite
Mit Requests kann ich die Titel und Hyperlinks der Artikel leicht verschrotten.
Ich möchte den Hyperlink der nächsten Seite abrufen, aber ich kann ihn nicht in der Antwort Requests finden, anders als die Titel oder Hyperlinks der Artikel.
from bs4 import BeautifulSoup
import requests
url = 'http://search.ft.com/search?q=SABMiller+PLC&t=all&rpp=100&fa=people%2Corganisations%2Cregions%2Csections%2Ctopics%2Ccategory%2Cbrand&s=-lastPublishDateTime&f=lastPublishDateTime[2000-01-01T00%3A00%3A00%2C2016-01-01T23%3A59%3A59]&curations=ARTICLES%2CBLOGS%2CVIDEOS%2CPODCASTS&highlight=true&p=1et'
response = requests.get(url, auth=(my login informations))
soup = BeautifulSoup(response.text, "lxml")
def get_titles_and_links():
titles = soup.find_all('a')
for ref in titles:
if ref.get('title') and ref.get('onclick'):
print ref.get('href')
print ref.get('title')
Die Funktion get_titles_and_links() gibt mir die Titel und Links aller Artikel.
jedoch mit einer ähnlichen Funktion für die nächste Seite, ich habe keine Ergebnisse:
def get_next_page():
next_page = soup.find_all("li", class_="page next")
return next_page
Oder:
def get_next_page():
next_page = soup.find_all('li')
for ref in next_page:
if ref.get('page next'):
print ref.get('page next')
Danke für Ihre Antwort, es hat mir geholfen, mein Problem zu verstehen. Ich benutzte das Modul [https://github.com/niklasb/dryscrape], um die Webseite zu scrappen. – Baptiste
Wenn es geklappt hat, ist das großartig. Aber das Reverse-Engineering der Netzwerkanforderungen macht die Konzepte spektakulär. Aber es braucht Zeit. –
Nun, um ehrlich zu sein, mit den schnellen Internetsuchen, die ich nach Ihrer Antwort gemacht habe, habe ich keine klaren (für mich) Erklärungen über das Reverse Engineering der Netzwerkanforderungen gefunden. Und ich muss sagen, liebe eine schnelle und einfache Lösung. – Baptiste