2010-09-06 58 views
0

我在一個月前就詢問了一個問題,它在這裏:"post" method to communicate directly with a server「瀏覽器發佈」和「程序發佈」有什麼區別?

而我仍然沒有得到有時我得到404錯誤的原因,有時一切工作正常,我的意思是我已經嘗試了這些代碼與幾個不同的WordPress博客。使用Firefox或IE,你可以發表評論沒有任何問題,無論它是什麼WordPress的博客,但使用Python和「後」方法直接與服務器通信我有404幾個博客。我試圖欺騙頭文件,在代碼中添加cookie,但結果保持不變。它在困擾我很長一段時間......任何人都知道原因?或者我應該添加什麼代碼來使程序像firefox或IE等瀏覽器一樣工作?希望你們能幫助我!

回答

0

你應該使用像機械化的東西。

+0

請問您更具體嗎?爲什麼一些工作,有些不這樣做,我真的想知道背後的原因 – Shane 2010-09-06 16:57:45

+0

機械化是一個瀏覽器包裝,爲您做所有的後期工作,只需閱讀文檔 – leoluk 2010-09-06 17:30:04

+1

我終於找到了我的問題,在幫助實時標題。我注意到,在提交評論後,它將被重定向到諸如「http:// localhost/new-post#comment-29」之類的頁面,並且urllib2.urlopen在嘗試打開此頁面時將引發404。這就是爲什麼當我得到404時,評論顯示出來。現在機械確實使事情變得更容易。謝啦! – Shane 2010-09-27 12:15:31

0

博客可能有一些垃圾郵件保護措施,防止這種發佈。 (使用編程帖子不訪問/閱讀頁面可以使用JavaScript保護輕鬆檢測)。 但是,如果是這種情況,我很驚訝你收到404 ...

無論如何,如果你想模擬一個真正的瀏覽器,最好的方法是使用一個真正的瀏覽器通過蟒蛇遙控。

查看WebDriver(http://seleniumhq.org/docs/09_webdriver.html)它有一個python實現,可以運行HtmlUnit,Chrome,IE和Firefox瀏覽器。

+0

奇怪的是,如果它是垃圾郵件防護,那麼在獲得404時,評論如何仍然顯示出來?我只是想知道爲什麼,想不出來...... – Shane 2010-09-06 17:07:55

+0

你沒有提到這一點。那麼它不能被垃圾郵件保護。問題是隨機出現還是一直存在於相同的博客上? – 2010-09-06 17:10:04

+0

總是在同一個博客上。而有趣的是,如果你第二次嘗試在博客上發表同樣的評論,你會得到500分,唯一的區別是你的評論這次不會顯示。但是,如果我使用瀏覽器,只要我不會發布太快,我總是可以發佈完全相同的評論。 – Shane 2010-09-06 17:11:41

相關問題