擅长:python、mysql、java
<p>我相信这种方法可以达到你想要的效果。首先,将python脚本保存在一个文件中,例如<code>my_script.py</code>。然后执行以下操作:</p>
<pre><code>cat geocodes.txt \
| xargs -I% sh -c "curl -s 'http://maps.googleapis.com/maps/api/geocode/json?latlng='%'&sensor=true' | python my_script.py"
</code></pre>
<p>我的_脚本.py是:</p>
^{pr2}$
<p>输出:</p>
<pre><code>Cardiff
Cardiff
Cardiff
Cardiff
Cardiff
Cardiff
Cardiff
Cardiff
</code></pre>
<p>我承认这有点老套。在</p>
<hr/>
<p>原始答案</p>
<p>我不是bash向导,所以我的本能就是简单地用Python做任何事情。下面的脚本将在Python 3中演示这种方法:</p>
<pre><code>import urllib.request as request
import urllib.parse as parse
import json
serviceurl = "http://maps.googleapis.com/maps/api/geocode/json?"
with open("geocodes.txt") as f:
for line in f:
url = (serviceurl +
parse.urlencode({'latlng':line, 'sensor':'true'}))
with request.urlopen(url) as response:
bytes_data = response.read()
obj = json.loads(bytes_data.decode('utf-8'))
print(obj['results'][0]['address_components'][3]['short_name'])
</code></pre>
<p>输出:</p>
<pre><code>Cardiff
Cardiff
Cardiff
Cardiff
Cardiff
Cardiff
Cardiff
Cardiff
</code></pre>