2019-01-01から1年間の記事一覧
applicationフォルダ配下にforms.pyを作る。 フォームを定義するには django.forms.Form django.forms.ModelForm のどちらかを使う。 django.forms.ModelFormの方が、既存Modelを流用できるため楽に書ける。 django.forms.Formを使った場合。 forms.py from …
python manage.py shell # 便宜上簡易的なimport宣言にする from . import ModelName # 対象モデルから全件取得 ModelName.objects.all() # 対象モデルから条件を絞って出力 ModelName.objects.filter() # 対象モデルからidが1のデータを取得 ModelName.obje…
基本render()を使う。 from django.http import HttpResponse from django.template import loader def test_function(request): # 何かの処理 result = ## # html読み込み template = loader.get_template('somewhere/index.html') context = {'result': re…
ここらへんわかってないのでへぼいわ。 Referer・・今のページへリクエストしている直前のページのアドレス 参考: developer.mozilla.org ファイルをダウンロードする際、ユーザーエージェントを付与するが、そのほかに付与したい場合、以下のようにする。 f…
目の前の箱使わせろや
seleniumとbeautifulsoupでクローリングしているときによく使うのだが、どちらがどっちだったか忘れてしまうため、記入。 selenium get_attribute() beautifulsoup has_attr() has_attr()の方は、attribute持っているかの判定を行い、持っていた場合その要素…
良く使うものと簡単かつ適当なサンプルを。 open_workbook("excel_file_name") 引数に指定したエクセルを開く sheet_by_name("sheet_name") 引数に指定したシートをアクティブにする nrows シート内の行を取得する。range()と合わせて使う row_values(index)…
なんか出た。 一時的な問題にも思えるのだが。 後で調べるためにおいとく。
既存プロジェクトをPyCharmでopenした際、指定ディレクトリ配下にimgやらdocやらのファイルがわんさかある場合、タイトルの事象が起きることがある。 待っているのも時間かかるし、いつ終わるかもわからないので、余分なファイルやフォルダは走査対象外にす…
windows10の方に共有フォルダにあるプログラムを実行できない、と言われたため調べた。 ネットワークドライブの割り当ては既に行っているものとする。 レジストリをいじればOK。 ただwindows7と10ではみるところが違うような気がするため、めもっておく。 共…
1 function命令 2 関数オブジェクト 3 new演算子を利用したコンストラクタ関数 1, 2,はわかるが、3の使いどころが分からない。 function命令 function hello(msg){ return msg; } console.log(hello("hello world")); 関数オブジェクト(関数名を持たないので…
よくあるある。 記事書いたか覚えないけど、覚えてないことはまた書いておこう。 題名の通りで urlopen()で開かない timeout=nを指定してもだめ な時にはUser-Agent情報を付与すること。 from urllib.request import urlopen url = "hogehoge" reqeust = url…
今まで2重配列をwriter.writerows()で一気にいれていたため、こういうことはなかった。 ただ、一行ずつ入れるときに一行空いてしまったためググったら速攻どんぴしゃな記事が。 qiita.com import csv with open(file_name, "w", encoding="utf-8_sig, newlin…
結論 read()したものを変数に突っ込んでました。。 ルーチン作業の自動化プログラムを作成しているときにはまったしょうもないこと。 こんな風にconfファイル作って conf.ini [download_folder] folder = XXXXX [chromedriver] file_path = XXXX url = XXXX …
今までファイルを取得してきた中でファイル名に日本語が含まれているものが少なかった。 今回日本語が含まれるファイルがいくつかあったため、その際に取った方法を。 サンプルurl: http://www.nantara.com/ほげほげ.jpg 流れ ①urlに日本語があるか確認する …
よくある、エクセルでまとめられた顧客一覧リスト記載のURLにアクセスする、みたいな作業工程を自動化した。 その時の簡単なメモ。 Basic認証 -> urlを加工して簡単にログインする from urllib.parse import urlparse from selenium import webdriver driver…
www.aise.ics.saitama-u.ac.jp
こんな感じのhtmlがあるとする(一部抜粋) <div class="hogehoge">第一回 天下一武道会を開始する。うわ、ビルズ様つえぇなあ。</div> この「第一回」という文字に対し何らかのタグを付与したい。 例えば太字にしたいとか。 BeautifulSoupのnew_tagをそのまま使うとhogehoge全体が太字にな…
MySQLからデータのバックアップをするため、Data Exportしようとすると怒られた。 前提 MySQL 5.7利用 mysqldump.exe is version XXX, but the MySQL Server to be dumped has version YYY. Because the version of mysqldump is not the same as the server…
正直書くものでもないな、、 query session/server:IP
以前 py-py.hatenablog.com ↑でキーを押しながら要素をクリックする、ということを書いたが、これに関連しそう&いろいろ詰まったことがあったのでメモ 結論 一覧に戻るやトップページに戻るなどのリンクやボタンを押すプログラムを組むときは、別タブを用意…
BeautifulSoupで既存のhtmlを加工した後、htmlとして使いたいときに以下の関数を利用する。 soup.prettify() from bs4 import BeautifuSoup, ResultSet html : str = "" with open("hoge.html", "r", encoding-"utf-8") as f: html = f.read() soup = Beauti…
Pycharmでデバッグしているときに発生した。 参考 stackoverflow.com ただし上記で検証していないので各自で検討。 考えることをやめた自分はそのまま実行だわ わはは。
参考 teratail.com ↑をやってダブルクリック
今まで windows phantomjs を使ってスクレイピングをしてきたが、phantomjsの開発が終わったため? chromedriverを使いたいという声が上がってきた。 chromedriverのheadlessモードを使うまでの手順を書く。 前提 windows chromedriverをダウンロードしてい…
する際にActionChainsに、seleniumで取得した要素をつっこんで怒られていた話。 ActionChainsに突っ込むのはdriverで、取得した要素を突っ込むのはActionChainsオブジェクトの関数click() from selenium import webdriver from selenium.webdriver.common.ke…
こんな感じのコードがあるとする from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions from selenium.webdriver.common.by import By url = "対象サイト"…
が、できず。。なぜだ。 前提 windows Python3.7.2 venvで仮想環境作った venvの仮想環境をactivateしてpipが古いからアップデートして pip install pandas で依存ライブラリ入ってインストには成功するのに Pycharm上でimport pandasと打つと 「ModuleNotFo…
DBにデータを入れる際に、データが大きすぎてinsertできなかったため、データを圧縮して保存することにした。 方法は簡単で、以下のようになる その前にいくつかまとめる .encode() .decode() .hex() .fromhex() encode()の使い方 文字列をbytes型へ変換する…
前提: windows python3.6 バッチファイルとして以下を記述 exe_python.bat @echo off Pythonのパス 実行したいpythonファイル pause 例: ディレクトリに以下のファイルを作る main.py execute_main.bat execute_main.bat @echo off Pythonへのパス main.py …