2016-06-15 18 views
-3

Ich versuche LinkedIn zu kratzen, um die aktuellen und Bildungselemente (Diese Informationen sind öffentlich zugänglich) von jedem Benutzerprofil zu erhalten. Nach dem Ausführen dieses Codes kann ich jedoch nicht die benötigten Informationen abrufen, sondern leere Klammern [].Scraping Linkedin mit Python gibt nur '' [] 'zurück

https://www.linkedin.com/in/bryan-engelhardt-a099204b Dies ist die genaue Verbindung i in diesem Moment bin mit und von hier aus möchte ich die folgenden Informationen in der Lage sein zu kratzen: "Current-College of the Holy Cross" und "Education-University of Iowa"

Mein Code ist ziemlich einfach:

from lxml import html 
import requests 

response = requests.get('https://www.linkedin.com/in/bryan-engelhardt-a099204b') 
data = html.fromstring(response.text) 

print(data.xpath('//title/text()')) #looks for title and prints it 
print(data.xpath('//*[@id="topcard"]/div[1]/div/div/table/tbody/tr[1]/td/ol/li/span/a/text()')) # using a direct xpath 
print(data.xpath('//*[@id="topcard"]/div[1]/div/div/table/tbody/tr[2]/td/ol/li/a/text()')) 

Die Ausgabe sieht wie folgt aus:

C:\Python34\python.exe "C:/Users/Holy Cross - Summer/Desktop/python/scrape/scrape1.py" 
[] 
[] 
[] 
Process finished with exit code 0 

ich bin nicht sicher, warum seine Rückkehr, dass als Antwort wie ich das mit anderen Websites versucht habe und erfolgreiche Ergebnisse bekommen habe. Es könnte sein, dass LinkedIn versucht, mich daran zu hindern, diese Informationen zu bekommen, und wenn es so ist, wie kann ich es umgehen?

+0

Vielleicht durch Drucken der Antwort beginnen? –

+0

Druckantwort gibt mir . Ich gehe davon aus, dass linkedin mir den Zugriff auf ihre Informationen verweigert und somit [] zurückbringt. Wie komme ich da rum? –

+0

Haben Sie die Antwort gelesen? –

Antwort

1

Ich denke, Sie sollten Linkedin Nutzungsbedingungen lesen.

Die Linkedin robots.txt file besagt, dass Sie Whitelisting benötigen, um die Website zu scrappen.

# Notice: If you would like to crawl LinkedIn, 
# please email [email protected] to apply 
# for white listing. 

Ich würde damit beginnen, für Whitelisting zu beantragen.

Sie könnten versuchen, Ihren Bot wie ein Mensch aussehen zu lassen, indem Sie mit dem User Agent spielen und was nicht, aber ich würde es nicht empfehlen.

+0

Danke! Ich werde es versuchen. Auch wenn ich mich nicht mit einem Account anmelde, stimme ich nicht ihren Benutzervereinbarungen zu (die das Scrapen verbieten), die dann theoretisch frei die Informationen, die für die Öffentlichkeit zugänglich sind, abschaben lassen, aber ich denke nicht ... –

+2

Sicher, aber sie sind auch frei, dich nicht hereinzulassen. –