2017-09-03 110 views
0

我想使用python將一些數據發佈到網站。使用python發佈數據

假設數據如下:

payload = { 
    'key': 'value', 
    'user-point-form-1': random_data #the data I want to post 
} 

,並在那裏我想張貼是HTML:

<div class="alert-user-point-a"></div> 
<input type="hidden" id="user-point-form-1" value="XXXXXXXXX"> 

我試着做response = s.post(url, data=payload),但它似乎沒有工作。我應該如何更改請求,以便將數據發佈到「XXXXXX」所在的位置?

+0

什麼是表單目標,你確定它是'POST'? – AChampion

+0

什麼是's'變量? –

+0

它沒有,並且確定它是一個POST,'s'是's = requests.Session()'在 –

回答

1

所以你想寫在網站的HTML?這不是techinacally後,但我明白你的意思......這更像是webscraping。一種工具就是硒,但要知道這是一座攀登的山峯。 Selenium使用通常的網頁瀏覽器解決了網頁自動導航的問題。你必須選擇一種語言(Java,python等),並獲得一個鏈接到硒的語言庫。 Python是pip install selenium。然後,您需要安裝專門針對瀏覽器品牌(Firefox,Chrome,Safari)的驅動程序。請參閱安裝here的詳細信息。接下來你使用庫。它允許你以編程方式打開窗口(如果你配置的話默默地),併發送鍵到字段,單擊按鈕等。

我希望有幫助!

+0

上的值的更改是否令人困惑,是不是我一直在做的事情?我在想可能是有效載荷「關鍵」或「用戶點形式1」,在哪裏出錯 –

+0

「將數據發佈到html」的概念是錯誤的。你無法從技術上做到這一點。你可以做的是建立一個機器人,爲你打開你的網頁瀏覽器,並在你想要編程的字段中寫下你想要的東西。這是什麼意思通過發佈數據到HTML? – Tico

+0

哦,我不知道。我猜如果這是唯一的解決方案,那麼是多數民衆贊成我想要的,但我寧願,如果它可以運行它在後臺默默無需打開chromedriver但這就是我想要的結果,是的。 –