2017-06-22 65 views
1

當我執行手動此網址在我的網頁瀏覽器,我看到我的網絡控制檯,其他三個請求將被執行。有用。python請求︰url與另一個子請求

電話: www.my.url/publish_something

  • 得到這個在cmd
  • 獲取在cmd
  • 帖子說...

我怎麼能做到這一點的Python請求? 我只調用一次「主」-URL,包括所有的子請求,比如我的瀏覽器。

> publish_url = "www.my.url/publish_something" r = 
> self.session.get(publish_url, verify=False, params=p) 

看來,當我用python requests-module調用這個url時,他沒有執行子請求。

+0

我真的不知道如何處理請求,但如果你更關心結果,而不是知道如何使用'requests'來做到這一點,我會建議看一下'selenium',它將處理請求通過網絡瀏覽器並執行其他請求 – LoicM

+0

我相信你正在打開一個普通的HTML頁面。您的瀏覽器通常只會發送基於HTML的額外請求。但是Python不需要。它只會得到迴應。您可以根據頁面中的鏈接發送請求。 – selten98

+2

您必須解析HTML,提取所有這些鏈接並手動檢索它們。您還應該啓用重定向。 – ForceBru

回答

0

當您在瀏覽器中打開一個URL,瀏覽器 - 發出GET請求,該網址 - 解析內容 - 問題得到每個圖像標籤,併爲每個腳本請求,風格等標籤mentionning外部源, - 執行腳本,這可能會導致更多的子請求和DOM修改,並最終呈現最終的DOM。

當你在上述第一階段發送一個帶有Python(帶有python-rquests,urllib模塊或其他)的GET請求時,所以如果你想要更多的話,你必須自己做(解析內容,檢索圖像等)。

或者您可以使用headless browser,比如PhantomJS