Python

<Python, selenium> 要素があるか?

要素elementがあるか? ないか? 存在するのか? の確認。 driver.find_elementsを使う。sが最後につく。 要素があれば、リストを返してくる。 なければ空リストを返す。 ja.stackoverflow.com

<Python> パスワードのために入力文字を表示しないプロンプト

めも。 http://ja.pymotw.com/2/getpass/

<Python> == と is の違い

違い。。。 isは、オブジェクト番号 id()で比較している。 ==はオブジェクトの内容で比較している。 In [1]: lst = [1,2,3] In [2]: lst2 = lst In [4]: id(lst) Out[4]: 439830664 In [5]: id(lst2) Out[5]: 439830664 In [6]: lst2 is lst Out[6]: True In…

<Python, iPython>エラー。。。 QxcbConnectionうんぬんかんぬん。。。

新しいものにひかれ、condaさんで、python3.6の環境を作成。 ちょれ~と、ipythonを起動したら、エラーになった。 QXcbConnection: Could not connect to display ちとぐぐった結果、~/.ipython/profile_default/startup/00-first.py中で、import matplotlib…

<Python, Anaconda> tempfile。。。

ちと。。。メモ。。。 WindowsのAnacondaのtempfileって、なんか仕様ちがわね??? dir()してみると、.writeとかないんだけど、、、 In [73]: dir(tempfile.TemporaryFile()) Out[73]: ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__…

<msys2, Jedi> msys2のvimでのJedi-vim

ちとはまったのでメモ。 msys2のvimでJedi-vim。 どうも、msys2のvimは/bin/msys-python2.7.dllか、/bin/msys-python3.4.dllを見に行っているらしい。 なので、そのどれかがないとJedi-vimが動かない。 エラーを吐く。 vim --version VIM - Vi IMproved 8.0 …

<Python, pandas> to_csvでUnicodeEncodeError

Flaskさん中で、subprocessを使って、Pythonスクリプトを呼び出す。 呼び出されたPythonスクリプト中で、pandas.DataFrame.to_csv()を使って、データフレームをcsv出力。 データフレーム中に入っているデータが、元UTF-8だった場合、かつFlask環境がLANG=asc…

<Python, requests> requestsでSSLError

最近requestsでSSLErrorが出るようになってしまった。。。 In [10]: import requests In [11]: r = requests.get(url, verify=False) ってやって、verifyを無視すれば、少々せきゅりちーに問題ありだがアクセスできるらしい。。。 hige-sun.net で、、reques…

<Python, pandas, pyOpenSSL> 久々に使ったらエラーだらけ。。。

pandas-datareaderを久々に使ったらエラーだらけだった。。。 その1 ImportError In [17]: import pandas as pd In [18]: import pandas_datareader.data as web : ImportError: cannot import name 'PandasError' pd.__version__ Out[19]: '0.20.2' pandas…

<Python, codecs> 文字列のエンコード、デコード

文字列strのエンコードencodeとデコードdecode。 codecsというモジュールでいろいろ対応できるらしいっす。 In [8]: import codecs 文字列を期待するものたち、、、 In [10]: codecs.encode('hage', 'utf8') Out[10]: b'hage' In [11]: codecs.encode('hage'…

<Python, yaml> Yamlしてみた。

設定ファイル config fileの1つの形式である、yamlをやってみた。 In [1]: s = ''' ...: name: Hage ...: sex: male ...: class: useless ...: hair: nothing ...: arms: ...: - gun ...: - pachinko ...: ''' In [3]: with open('aaa.yaml', 'w') as f: ..…

<selenium, Python> Proxyの設定... Firefoxの場合と、Pyvirtualdisplay

seleniumでProxyを指定する方法…Firefoxの場合。 あと、Pyvirtualdisplayで、Firefoxのヘッドレスheadlessをやってみた。 ヘッドレス、、とは、GUI無し。 つまり、うまくいけばtelnetやrshで端末から入って、コマンドラインで動かせる。 rom selenium import…

<Json, REST API> Json Test

REST APIの実験をかねて、Jsonのデータを返してくれるようなとこないかな? と探したらあった。 http://www.jsontest.com/ こりゃいいや。 早速試す。 In [1]: import requests In [2]: requests.get('http://echo.jsontest.com/key/value/one/two') Out[2]: <Response [200]></response>…

<Python> 文字コード

文字コード Character Codesで少し遊んだ。 UTF-8のコード表。 UTF-8コード表(1) このコード表を元にデコードdecodeしてみる。 In [36]: b'\xe3\x81\x82'.decode() Out[36]: 'あ' In [37]: b'\xc3\xa0'.decode() Out[37]: 'à' なるへそ。 じゃ、ってことで、…

<Python, pandas, Beautiful Soup> html tableからpandas dataframeへ。

html中にあるtableから、pandas dataframeを作る。 <tr> <td>タブとかを、ちくちくと、Beautiful Soupでパースしないといけないのか、、、 いやいや、そんな面倒なことは、誰かが、既に何かを作っているはず、、と思ってたら、あった。 pd.read_html()でいける。ちょ</td></tr>…

<Python, selenium> ブラウザのウインドウを切り替える。

セレニウムseleniumを使ってる時に、ブラウザbrowserのウインドwindowを切り替える技。 .window_handlesアトリビュートに、Window Idが入っているので、 それを、.switch_to_window()メソッドで指定する。 In [93]: from selenium import webdriver In [94]:…

<Python, iPython, Jupyter> Historyをファイルに保存する。

iPythonで、ちょろちょろ実行した結果のhistoryをファイルに保存saveする。 In [170]: %history -f aaa.py File 'aaa.py' exists. Overwrite? y Overwriting file. 29個目の回答がそれだった。 さんきゅー。 stackoverflow.com

<Python, selenium> 空白のあるクラス名を選択するには、、

Seleniumで、空白のあるクラス名を選択するには、、、 how to select the class name having a blank in it? まずは、xpathを使う。 In [133]: from selenium import webdriver In [144]: d = webdriver.Chrome() In [145]: d.get('http://nekoyukimmm.haten…

<Python, selenium> Chromeを動かしてみた。

ちょと、seleniumを試す。 >pip install selenium で、下記から、chromedriver.exeをゲットする。 sites.google.com そいつをパスpathが通っている、/usr/local/binに放り込む。 で、 In [1]: from selenium import webdriver In [6]: d = webdriver.Chrome(…

<Python, pandas, sentdex> resample

目的とするDataFrameから、値を抜き取りする、リサンプリング resample をしてみた。 In [20]: import datetime as dt In [21]: import pandas as pd In [22]: import pandas_datareader.data as web In [23]: s = dt.datetime(2000,1,1) In [24]: e = dt.da…

<pandas, Python, sentdex> Python Programming for Finance

www.youtube.com やってみた。 In [1]: import datetime as dt In [2]: import matplotlib.pyplot as plt In [3]: from matplotlib import style In [4]: import pandas as pd In [5]: import pandas_datareader.data as web In [6]: style.use('ggplot') In…

<Python, pandas> 縦にずらす。

縦にずらす。 In [22]: df = pd.DataFrame({'a':[1,2,3,4,5,6]}) In [23]: df Out[23]: a 0 1 1 2 2 3 3 4 4 5 5 6 In [24]: df.shift(-1) Out[24]: a 0 2.0 1 3.0 2 4.0 3 5.0 4 6.0 5 NaN In [25]: df.shift(1) Out[25]: a 0 NaN 1 1.0 2 2.0 3 3.0 4 4.0 …

<Python, numpy> 無限大

知ってましたか? pythonで無限大は、np.infか、float('inf')で表現するらしいっす。 In [1]: float('inf') Out[1]: inf In [2]: float('inf') == 0 Out[2]: False In [3]: float('inf') < 1 Out[3]: False In [4]: float('inf') > 1 Out[4]: True In [5]: i…

<Python, pandas> 日経平均を読み込む。

日経平均N225を読み込む。 pandas-datareaderを使う。 pandas-datareader — pandas-datareader 0.1 documentation まずはインストール。 % conda install pandas-datareader Fetching package metadata ......... Solving package specifications: .........…

<Python> Talk Python To Me

talkpython.fm

<Flask, Python> リクエストコンテキストで遊ぶ。

リクエストコンテキストrequest contextで遊ぶ。 つまり、リクエストを受けた状態、で遊ぶ。 その1 withでrequest context状態にする。 In [1]: from flask import request, Flask In [2]: app = Flask('aaa') In [3]: with app.test_request_context('/hel…

<Python, gspread> 読み書き。

gspreadでの読み書き。 まずは、コネクトして、Spreadsheetオブジェクトを作る。 In [4]: import os In [6]: import json In [7]: import gspread In [8]: from oauth2client.service_account import ServiceAccountCredentials In [9]: scope = ['https://s…

<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':…

<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…

<Anaconda, msys2, conda, python> バグかな、、msys2上でcondaが失敗したので、直してみた。

バグなのか? msys2上で、Anacondaパッケージのcondaで、仮想環境に切り替える時、 pipがおかしかったので、少し直してみた。 現象。 % conda info -e # conda environments: # py27 C:\Anaconda3\envs\py27 root * C:\Anaconda3 % source activate py27 py2…