How to pass a string + web url and receive the response using python [closed]

妖精的绣舞 提交于 2019-12-07 05:59:17

问题


I'm using Python and Google Translate. When I click on Listen while translating, a sound file is generated and a URL is passed like so: http://translate.google.com/translate_tts?tl=en&q=text.

I want to generate URLs locally using Python then send them to the web and receive these sound files from Google Translate. I tried a lot of URLlib2 and URLparse but I have no clue about what I need to do to make this work.


回答1:


You need to change the user-agent so that the website thinks you are connecting with a browser. Try the following bit of code:

import urllib2

url = "http://translate.google.com/translate_tts?tl=en&q=text"
request = urllib2.Request(url)
request.add_header('User-agent', 'Mozilla/5.0') 
opener = urllib2.build_opener()

f = open("data.mp3", "wb")
f.write(opener.open(request).read())
f.close()


来源:https://stackoverflow.com/questions/7226167/how-to-pass-a-string-web-url-and-receive-the-response-using-python

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!