2015-12-26 3 views
2

Ниже приведена простая программа для печати имена профессоров в ссылке: http://cse.iitkgp.ac.in/index.php?secret=d2RkOUgybWlNZzJwQXdLc28wNzh6UT09Python LXML XPath не работает

XPath запрос //font[1]/b/a/b/text() дает имена выходных при испытании отдельно. Однако эта программа дает пустой список в качестве вывода. Любые идеи, что я делаю неправильно здесь?

import sys 
import requests 
import lxml.html 

def getdata(): 
    v = lxml.html.document_fromstring(requests.get("http://cse.iitkgp.ac.in/index.php?secret=d2RkOUgybWlNZzJwQXdLc28wNzh6UT09").content) 
    profs = v.xpath('//font[1]/b/a/b/text()') 
    for prof in profs: 
     print prof 

if __name__=="__main__": 
    getdata() 

ответ

2

Эта страница использует AJAX для рендеринга, т. Е. Список необходимых элементов загружается через JavaScript.

Это URL, где данные фактически служил:

http://cse.iitkgp.ac.in/faculty4.php?_=1451158710268

Я нашел его с помощью инструментов разработчика в Chromium, ищут запросы XHR.

+0

Работает как очарование. Спасибо! Как вы указали URL-адрес? – ritz301

+0

@ ritz301: обновленный ответ –

Смежные вопросы