きゃっとぐるーぶ

忘れてもいいようにメモを取っても、メモを取ったことを忘れる男の備忘録

2019-03-01から1ヶ月間の記事一覧

tempfile 一時ファイルやディレクトリの作成

テキストファイルの文字コードを変えたいときとかに、一旦どこかへ退避させる必要があるんだけど、自分でやらんでもよかったのね。zip展開に一時ディレクトリを活用しよ。 一時ファイルの作成 import tempfile f = tempfile.NamedTemporaryFile('w+') f.name…

ファイルの文字コード変更 utf-8 => shift_jis

import codecs def to_shiftjis(org_file, dst_file): of = codecs.open(org_file, 'r', 'utf-8') df = codecs.open(dst_file, 'w', 'shift_jis') for line in of: df.write(line) of.close() df.close() 退屈なことはPythonにやらせよう ―ノンプログラマー…

split()と rsplit()を使う splitlines()で改行区切り

split()で狙い通りに区切り位置が指定できないときは word = "John F. Kennedy International Airport" word.split() # > ['John', 'F.', 'Kennedy', 'International', 'Airport'] # と返ってくる word.split(None, 2) # > ['John', 'F.', 'Kennedy Internat…

振り飛車党なら必須な棋書3冊をご紹介します

四間飛車上達法 藤井猛 四間飛車を指さない方でも読んでおくと得です。 たとえば美濃囲いの左金の使い方。自由に動かしていいという発想は四間飛車上達法を読むまでありませんでした。 四間飛車上達法 (最強将棋レクチャーブックス)作者: 藤井猛出版社/メー…

将棋が強くなるためには詰将棋が最適?! 詰将棋のやりかた

詰将棋は「正解」以外に意味がある 詰将棋は正解しなくてもよい 10秒考えてわからなかったら答えを見る 正解以外の手順を探す 持駒を変えてみる(角だったら詰むけど、銀なら?) 詰将棋本は最低20周する 1周目〜5周目は普通に解く 6周目〜10周目まで…

request-htmlでリンクを拾い集めるのが簡単だったので簡易画像ダウンローダーをつくった

追記: 画像の保存先を記事ごとに振り分けるように作ったもの。 Pythonで画像ダウンローダーを作ってみた - きゃっとぐるーぶ ページ内のリンクを収集するのが本当に楽。 from requests_html import HTMLSession session = HTMLSession() r = session.get(pa…

「アラート無限ループ事件」のオマージュ? パソコンのCDトレイを無限に出し入れしつづけようじゃないか

先日ブラウザのアラートを無限に出し続けるコードを拡散したら逮捕された若者が居た。 ならば、ssh接続してるマシンのCDトレイを無限に出し入れしたらおまわりさんはお家にやってくるのだろうか。 $ while true ; do eject && eject -t ; done C-cで終了 入…

requests + BeautifulSoupでスクレイピングで文字化けしたときの対処法

from bs4 import BeautifulSoup import requests r = requests.get(page_url) # 追加する r.encoding = r.apparent_encoding soup = BeautifulSoup(r.text, 'lxml') 文字化けは解決するが若干時間がかかるようになる。 Pythonクローリング&スクレイピング -…

Pythonからpyperclipを使ってクリップボードを読み書きする方法

pyperclipのインストール $ pip install pyperclip import pyperclip # クリップボードから読み込み clipboard = pyperclip.paste() # クリップボードに書き込み pyperclip.copy(data) import pyperclip clipboard = pyperclip.paste().split('\n') data = […

jupyter notebookにkernelを追加する方法

任意の名前でvenvを作成 $ python -m venv <kernelname> アクティベートする $ source <kernelname>/bin/activate ipykernelをインストール $ pip install ipykernel jupyterで使えるようにする $ ipython kernel install --user --name=<kernelname> ipythonとなってるが問題はない。 これで新規</kernelname></kernelname></kernelname>…