2016-01-03 3 views
1

Когда я запускаю код ниже он возвращает пустую строкупитон requests.get() возвращает пустую строку

url = 'http://www.allflicks.net/wp-content/themes/responsive/processing/processing_us.php?draw=5&columns[0][data]=box_art&columns[0][name]=&columns[0][searchable]=true&columns[0][orderable]=false&columns[0][search][value]=&columns[0][search][regex]=false&columns[1][data]=title&columns[1][name]=&columns[1][searchable]=true&columns[1][orderable]=true&columns[1][search][value]=&columns[1][search][regex]=false&columns[2][data]=year&columns[2][name]=&columns[2][searchable]=true&columns[2][orderable]=true&columns[2][search][value]=&columns[2][search][regex]=false&columns[3][data]=genre&columns[3][name]=&columns[3][searchable]=true&columns[3][orderable]=true&columns[3][search][value]=&columns[3][search][regex]=false&columns[4][data]=rating&columns[4][name]=&columns[4][searchable]=true&columns[4][orderable]=true&columns[4][search][value]=&columns[4][search][regex]=false&columns[5][data]=available&columns[5][name]=&columns[5][searchable]=true&columns[5][orderable]=true&columns[5][search][value]=&columns[5][search][regex]=false&columns[6][data]=director&columns[6][name]=&columns[6][searchable]=true&columns[6][orderable]=true&columns[6][search][value]=&columns[6][search][regex]=false&columns[7][data]=cast&columns[7][name]=&columns[7][searchable]=true&columns[7][orderable]=true&columns[7][search][value]=&columns[7][search][regex]=false&order[0][column]=5&order[0][dir]=desc&start=0&length=25&search[value]=sherlock&search[regex]=false&movies=true&shows=true&documentaries=true&rating=netflix&_=1451768717982' 
print requests.get(url).text 

но если я ставлю URL в браузере он будет показывать свою информацию JSon. Я заметил, что при отладке браузера должны быть установлены данные для вскрытия плагина для просмотра json. Если в браузере нет вилки с пустой веб-страницей. Итак, моя теория заключается в том, что она должна что-то делать, когда передается HTTP-запрос, но я не отсюда.

Любая помощь будет отличной.

+0

Кажется, у меня нет выхода в браузере, является вы уверены, что это URL-адрес, который вы хотите? – pythad

+0

@pythad, если вы откроете домашнюю страницу allflicks с помощью инструментов разработчика браузера и отфильтруйте XHR-запросы на вкладке сети, вы увидите запрос, о котором спрашивает OP, спасибо. – alecxe

ответ

3

Вам нужно открыть session, посетить главную страницу, чтобы получить набор печенья, а затем сделать запрос XHR в «processing_us.php»:

url = "http://www.allflicks.net/wp-content/themes/responsive/processing/processing_us.php?draw=5&columns[0][data]=box_art&columns[0][name]=&columns[0][searchable]=true&columns[0][orderable]=false&columns[0][search][value]=&columns[0][search][regex]=false&columns[1][data]=title&columns[1][name]=&columns[1][searchable]=true&columns[1][orderable]=true&columns[1][search][value]=&columns[1][search][regex]=false&columns[2][data]=year&columns[2][name]=&columns[2][searchable]=true&columns[2][orderable]=true&columns[2][search][value]=&columns[2][search][regex]=false&columns[3][data]=genre&columns[3][name]=&columns[3][searchable]=true&columns[3][orderable]=true&columns[3][search][value]=&columns[3][search][regex]=false&columns[4][data]=rating&columns[4][name]=&columns[4][searchable]=true&columns[4][orderable]=true&columns[4][search][value]=&columns[4][search][regex]=false&columns[5][data]=available&columns[5][name]=&columns[5][searchable]=true&columns[5][orderable]=true&columns[5][search][value]=&columns[5][search][regex]=false&columns[6][data]=director&columns[6][name]=&columns[6][searchable]=true&columns[6][orderable]=true&columns[6][search][value]=&columns[6][search][regex]=false&columns[7][data]=cast&columns[7][name]=&columns[7][searchable]=true&columns[7][orderable]=true&columns[7][search][value]=&columns[7][search][regex]=false&order[0][column]=5&order[0][dir]=desc&start=0&length=25&search[value]=sherlock&search[regex]=false&movies=true&shows=true&documentaries=true&rating=netflix&_=1451768717982" 
with requests.Session() as session: 
    session.headers = {"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36"} 
    session.get("http://www.allflicks.net/") 

    response = session.get(url, headers={"Accept" : "application/json, text/javascript, */*; q=0.01", 
             "X-Requested-With": "XMLHttpRequest", 
             "Referer": "http://www.allflicks.net/", 
             "Host": "www.allflicks.net"}) 
    print(response.json()) 
+0

ваш потрясающий, который работал на меня, спасибо. Я буду помнить о будущем. – msaldivar