<Python, requests> 郵便番号ゲット
Python
でもやってみた。
In [69]: import requests In [70]: r = requests.get('http://zipcloud.ibsnet.co.jp/api/search', params={'zipcode':'7830060'}) In [71]: requests.get('http://zipcloud.ibsnet.co.jp/api/search?callback', params={'zipcode':'7830060'}) Out[71]: <Response [200]> In [72]: r = requests.get('http://zipcloud.ibsnet.co.jp/api/search', params={'zipcode':'7830060'}) In [73]: r.content Out[73]: b'{\n\t"message": null,\n\t"results": [\n\t\t{\n\t\t\t"address1": "\xe9\xab\x98\xe7\x9f\xa5\xe7\x9c\x8c",\n\t\t\t"address2": "\xe5\x8d\x97\xe5\x9b\xbd\xe5\xb8\x82",\n\t\t\t"address3": "\xe8\x9b\x8d\xe3\x81\x8c\xe4\xb8\x98",\n\t\t\t"kana1": "\xef\xbd\xba\xef\xbd\xb3\xef\xbe\x81\xef\xbd\xb9\xef\xbe\x9d",\n\t\t\t"kana2": "\xef\xbe\x85\xef\xbe\x9d\xef\xbd\xba\xef\xbd\xb8\xef\xbd\xbc",\n\t\t\t"kana3": "\xef\xbe\x8e\xef\xbe\x80\xef\xbe\x99\xef\xbd\xb6\xef\xbe\x9e\xef\xbd\xb5\xef\xbd\xb6",\n\t\t\t"prefcode": "39",\n\t\t\t"zipcode": "7830060"\n\t\t}\n\t],\n\t"status": 200\n}' In [74]: import json In [75]: json.loads(r.content.decode()) Out[75]: {'message': None, 'results': [{'address1': '高知県', 'address2': '南国市', 'address3': '蛍が丘', 'kana1': 'コウチケン', 'kana2': 'ナンコクシ', 'kana3': 'ホタルガオカ', 'prefcode': '39', 'zipcode': '7830060'}], 'status': 200}
<jQuery> getJSON
jQuery
javascript
でjson
データを引っ張るには、、、
$.getJSON
だ。 だー、だー、だー、、、。
郵便番号zipcode
を引っ張るスクリプトscript
。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Zipcode</title> </head> <body> <form> <div> <label for="zip">Zipcode</label><br /> <input id="zip" type="text" size="10" /> <input id="search" type="button" value="Search" /> </div> <div> <label for="address">Address</label><br /> <input id="address" type="text" size="35" /> </div> </form> </body> <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous"> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> <script> $(function() { $('#search').click(function() { $.getJSON('http://zipcloud.ibsnet.co.jp/api/search?callback=?', { zipcode: $('#zip').val() } ) .done(function(data) { if (data.results) { var result = data.results[0]; $('#address').val(result.address1 + result.address2 + result.address3); } else { $('#address').val('No address matched'); } }); }); }); </script> </html>
<Google Cloud Platform> _winreg
もう解決できないのかと思った、このエラー。
ImportError: No module named _winreg
解決できた。
/c/Users/Nekoyuki/AppData/Local/Google/Cloud SDK/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/python/sandbox.py
中の次のリストに、_winreg
を追加する。
_WHITE_LIST_C_MODULES = [ 'array', '_ast', 'binascii', : : '_winreg', # 追加! 'zipimport', 'zlib', ]
動いたよー。 ようやく。
長かった。。。
<conda, dos, Python> dos上でconda
dos
上で、conda
して、Python
環境を切り替える方法。
C:\>where activate C:\Anaconda3\Scripts\activate C:\Anaconda3\Scripts\activate.bat C:\>conda info -e # conda environments: # py27 * C:\Anaconda3\envs\py27 root C:\Anaconda3 C:\>activate py27 (py27) C:\>
いいねー。 いけるねー。
<Google Cloud Platform> RAND_egd がインポートできんとさ、、
次のエラーメッセージがでた。
ImportError: cannot import name RAND_egd
グーグルっちしたら、、、
読んでいくと、pythonが2.7.12
ではだめらしい。
2.7.9
にしないといけなと、、
うーん、、、
後日。。。
結局、conda
さんで、2.7.9
を作った。
<Google Cloud Platform> SSL moduleがないと言われたとき、
Google Cloud Platform
で、いそいそとコードを書いて、ローカルで動くか試した時、、、
% ~/google-cloud-sdk/bin/dev_appserver.py .
してから、http://localhost:8080
にアクセスしたら、エラーメッセージがでた。。。
Sorry, unexpected error: Can't connect to HTTPS URL because the SSL module is not available.
うーん、、って悩んだあと、グーグルした結果、次の1文をapp.yaml
に追加すればいいとのこと。
# TODO: List any other App Engine SDK libs you may need here. libraries: #- name: jinja2 # version: latest - name: ssl # Added by Neko version: latest # Added by Neko
動いた。 なるへそ。
お世話になったstackoverflow。
あとは、マニュアル。
https://cloud.google.com/appengine/docs/python/tools/using-libraries-python-27
https://cloud.google.com/appengine/docs/python/tools/built-in-libraries-27
<Github> gitでSSLエラー
ひさびさにgit
したらエラーがでた。
% git pull error: SSL certificate problem, verify that the CA cert is OK. Details: ...
ちと、グーグルした結果、.gitconfig
に次の文を追加して、
SSL認証を無効にすることにした。
[http] sslVerify = false