2016-06-30 7 views
0

Ich möchte Daten zu kriechen Python mit Ich habe versucht, wieder versucht, aber es nicht funktionierte ich nicht Fehlercode kann ich Code wie folgt geschrieben gefunden:kriechen Webdaten mit Python html Fehler

import re 
import requests 
from bs4 import BeautifulSoup 

url='http://news.naver.com/main/ranking/read.nhn?mid=etc&sid1=111&rankingType=popular_week&oid=277&aid=0003773756&date=20160622&type=1&rankingSectionId=102&rankingSeq=1' 
html=requests.get(url) 
#print(html.text) 
a=html.text 
bs=BeautifulSoup(a,'html.parser') 
print(bs) 
print(bs.find('span',attrs={"class" : "u_cbox_contents"})) 

ich möchte Antwortdaten in Nachrichten

enter image description here

wie Sie sehen können kriechen, ich versucht, dies zu Anbraten:

Spannweite, class = "u_cbox_contents" in bs

aber Python nur sagen, "None"

Keine

so überprüfen i bs Funktion Drucken mit (bs)

und ich überprüfe bs Variable Inhalt

aber es gibt keine span, class = "u_cbox_contents "

Warum dieses Hacken?

ich weiß wirklich nicht, warum

mir bitte zum Lesen

Dank helfen.

Antwort

1

Anfragen rufen den Inhalt der URL ab, führen jedoch kein JavaScript aus.

Ich führte den gleichen Abruf mit cURL, und ich kann kein Vorkommen von u_cbox_contents im HTML-Code finden. Höchstwahrscheinlich wird es mit JavaScript injiziert, weshalb BeautifulSoup es nicht finden kann.

Wenn Sie den Code der Seite benötigen, wie er in einem "normalen" Browser gerendert würde, könnten Sie versuchen Selenium. Werfen Sie auch einen Blick auf this SO Frage.

+0

ich appriciate zu Ihnen !! Danke vielmals! –