2012-01-02 42 views
2

我嘗試使用Python從this網站下載一個語音文件(MP3)網站(部分Javascript編寫的)下載文件我沒有得到正確的結果。我也聽說過硒。無論如何,我甚至不知道技術上是否合理(機械化+ Javascript)。從使用Python

我正在尋找答案,最後我找到了這個solution

這看起來像一個類似的問題,但我絕對不知道我應該把什麼,而不是第四行。

如果您有任何建議(可能與我的完全不同),我會很高興看到它。

回答

1

(移動接聽,以獲得更多的空間)

感謝您指出我的硒,我不知道它看起來很酷;無論如何:我有一個快速的外觀和js似乎發射ajax請求,這不會產生明顯的結果 - 我猜音頻傳輸是通過flash或其他方式在後臺完成的;無論如何:使用他們提供的服務怎麼樣:developer.ivona.com,而不是試圖從您的演示界面中攻擊您的web服務。

不管怎麼說,這是你要的被黑客入侵的網絡服務:

這是你想要得到的網址:

"http://www.ivona.com/voicetest.php?rtr=1&t2r=%(the_text)s..&v2r=dXNfc2FsbGk.&lang=us" % dict(
    the_text=base64.b64encode("Hello, world!"), 
    the_voice=base64.b64encode("us_salli"), 
    ) 

您可以測試使用,例如,mplayer的:

mplayer "http://www.ivona.com/voicetest.php?rtr=1&t2r=SGVsbG8sIHdvcmxkIQ==..&v2r=dXNfc2FsbGk.&lang=us" 

而且,從Python中,使用urllib來檢索和存儲某處。

請注意,由於這是未經授權的使用,您可能會在法律問題等情況下被阻止/招致 - 不要在生產應用程序中使用!

+0

非常感謝您的幫助。無論如何,都有一個(小)問題。它在英語方面效果很好,但如果我把例如「pl_jacek」而不是「us_salli」並改爲「Hello,world!」到一個波蘭語單詞它不能正常工作(仍然英語發音);(我認爲這取決於網址,不是嗎? – w0jt 2012-01-02 20:06:55

+0

我不太確定語言的名稱應該是,反正如果你有使用Firebug控制檯,你會看到當你點擊PLAY按鈕時產生的POST請求:'v2r'參數的值是你必須使用的參數值。另外,將'&lang = us'改爲&lang = pl ' – redShadow 2012-01-02 21:00:51

+0

現在它完美地工作了!我真的很感激,你節省了我的時間,並且我學到了另外一些新的東西,鞠躬致敬 – w0jt 2012-01-02 21:47:27