Ich übte den Crawler mit Python
.Python-Crawler kann Element nicht finden
Mein Ziel ist es, das Testdatum auf GRE website zu finden.
Hier ist was ich jetzt getan habe.
import urllib2
from bs4 import BeautifulSoup
from urllib2 import urlopen, Request
gre_url = 'https://ereg.ets.org/ereg/public/testcenter/availability/seats?testId=30&testName=GRE+General+Test&location=Taipei+City%2C+Taiwan&latitude=25.0329636&longitude=121.56542680000007&testStartDate=April-01-2017&testEndDate=May-31-2017¤tTestCenterCount=0&sourceTestCenterCount=0&adminCode=&rescheduleFlow=false&isWorkflow=true&oldTestId=30&oldTestTime=&oldTestCenterId=&isUserLoggedIn=true&oldTestTitle=&oldTestCenter=&oldTestType=&oldTestDate=&oldTestTimeInfo=&peviewTestSummaryURL=%2Fresch%2Ftestpreview%2Fpreviewtestsummary&rescheduleURL='
data = urllib2.urlopen(gre_url).read()
soup = BeautifulSoup(data, "html.parser")
print soup.select('div.panel-heading.accordion-heading') # return []
Allerdings scheint es, dass es nicht das Element div.panel-heading.accordion-heading
aus data
extrahieren kann. Wie repariere ich es?
Wenn ich versuche, zu der URL zu gelangen, von der Sie Daten abrufen, wird auf die Hauptseite umgeleitet. –
Basierend auf der URL, die Sie scrappen, sehe ich die Option 'isUserLoggedIn = true'. Setzen Sie dies auf false - 'isUserLoggedIn = false '- ruft keine Umleitung auf die Hauptseite auf. Dann sollten Sie in der Lage sein, auf das gewünschte Element zuzugreifen. –
@ MD.KhairulBasar Ja, Sie haben Recht, ich kann auch nicht mit Inkognito-Modus zugreifen. –