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