2
我很好奇,为什么我得到运行404错误这一行:为什么urllib2.urlopen无法打开“http:// localhost/new-post#comment-29”等页面?
urllib2.urlopen("http://localhost/new-post#comment-29")
虽然一切正常冲浪http://localhost/new-post#comment-29在任何浏览器...
的urlopen方法不以“#”解析网址在里面?
有人知道吗?
非常感谢!还有一个问题,如果我使用“post”方法通过urlopen方法直接与服务器通信,我会得到一个响应url,例如“http:// localhost/new-post#comment-29”(例如,在提交评论时) ,那么它就是404.如果我想绕过这个问题,我可以使用什么替代方法,或者是否有一些参数来控制整个过程? – Shane 2010-09-26 15:50:05
@Shane,你需要在URL的路径和查询被发送到服务器之前删除片段 - 你可以为此目的构建一个花哨的开启者,但我只是建议直接做。无论你使用GET还是POST都没有区别。 – 2010-09-26 15:59:06
嗯,我不认为我有控制权,我的意思是,以评论提交为例,通常我会这样编码:Req = urllib2.Request(“http:// localhost/wp-comments-post。 php“,Data,Header); Response = urllib2.urlopen(Req);我总是得到404,而评论仍然显示出来,我知道它一定是“#”问题,但我不知道如何停止整个过程,并删除“#”,所以它不会再提高404 。那么,我该如何做到这一点? – Shane 2010-09-26 16:05:03