1
我想使用python web腳本來顯示一些html,暫停一秒鐘,然後將表單數據發佈到另一個將顯示一些不同的html的python腳本。從python腳本獲取新的web瀏覽器頁面
script1.py:
print "Content-type: text/html;charset=utf-8\r\n\r\n"
print "<html>"
print "<body>"
print "<p>Some temporary info"
print "</body>"
print "</html>"
time.sleep(1)
params = urllib.urlencode({'test': "test_info"})
response = urllib.urlopen("http://www.exampleurl.com/cgi-bin/script2.py", params)
print response.read()
當我運行該瀏覽器窗口同時顯示來自SCRIPT1「一些臨時信息」,並從SCRIPT2的HTML(即臨時信息是不是暫時的)的HTML。我怎樣才能讓瀏覽器只用script2 html開始一個新頁面,就好像我點擊了一個真正的表單提交而不是用urllib僞造它呢?
編輯:正如哈克曼的建議,我已經使用客戶端重定向嘗試,如:
print "<meta http-equiv=\"refresh\" content=\"1;URL=http://www.exampleurl.com/cgi-bin/script2.py\">"
這確實提供了script2.py新的瀏覽器頁面,但我不能看到如何提供POST數據與此方法。
客戶端重定向確實提供了一個新的瀏覽器頁面,但是從我看到它不允許重定向使用POST數據。 – user3668592
基本上你想創建一個代理,所以你重定向到你的服務器上的一個新頁面,該頁面提取第三方頁面並顯示它。 – h4ck3rm1k3
對於我來說,我不清楚如何將POST數據(這是在script1.py中動態生成的)發送到調用script2.py的代理頁面。 – user3668592