自動化無しに生活無し

WEB開発関係を中心に備忘録をまとめています

  • 【Wordpress】日本語タイトルで404になる問題はパーマリンクを修正して日本語URLをやめる

    • 作成日時:
    • 最終更新日時:
    • Categories: others
    • Tags: Wordpress tips
    Wordpressをインストールして、日本語タイトルの記事を追加すると、このように、404 Not Foundになってしまう。 こういう時は、URLに日本語が含まれているからエラーになってしまう。パーマリンクを修正すると良いだろう。 デフォルトではカスタム構造になっているので、日本語が混ざると404になることがあるようだ。 ...
  • Ubuntu 22.04 LTS でTakaoフォントをインストールして行間を詰める。

    • 作成日時:
    • 最終更新日時:
    • Categories: インフラ
    • Tags: Ubuntu tips
    Ubuntu22.04にて日本語版を使用していると、これまでのUbuntuと違って、ターミナルの行間が異常に広いことがわかる。 理由はTakaoフォントがデフォルトでインストールされていないから。 ここからインストールできる。 インストールが完了すると、このように22.04でも行間を狭くできる。 Firefox にて規定に戻す ただ、これだけだと、Firefoxの行間と文字サイズが小さくなってしまうので、 Firefox のフォント指定 ...
  • 【BeautifulSoup】imgタグをスクレイピングして画像をダウンロードする

    DoS攻撃になってしまうので、ダウンロードのたびに1秒待つようにしたほうが良いだろう。 import requests,bs4,time result = requests.get("https://noauto-nolife.com/") soup = bs4.BeautifulSoup(result.content, "html.parser") elems = soup.select("img") count = 0 for elem in elems: url = elem.get("src") result = requests.get(url) #バイナリで書き込み with open(str(count)+".png", "wb") as f: f.write(result.content) count += 1 #1秒待機する(DoS攻撃になってしまうため) time.sleep(1) ...
  • 【BeautifulSoup】属性を取得する【class,src,valueなど】

    BeautifulSoupにて、属性を取得する。 import requests,bs4 result = requests.get("https://noauto-nolife.com/") soup = bs4.BeautifulSoup(result.content, "html.parser") elems = soup.select("img") for elem in elems: #src属性を取得(文字列型) print(elem.get("src")) #alt属性を取得(文字列型) print(elem.get("alt")) #属性値が複数なら、リストで取得できる print(elem.get("class")) #存在しない属性はNoneが返ってくる print(elem.get("hoge")) ...
  • 【Python】virtualenvをactivateせずに、venvにインストールしたライブラリを読み込んで実行する【aliasやcrontabなどに】

    例えば、システムに直インストールするわけには行かないPythonライブラリを使うとする。 そういう時はvirtualenvを使って仮想開発環境を作り、そこにactivateしてインストールするとよいだろう。 だが、crontabやaliasなどで実行する場合はどうだろうか?ワンライナーで実行するにはactivateするわけには行かない場合もある。 そういう時は、このように実行するとよいだろう。 venv/bin/python test.py これで ...
  • 【Linux】grepとsedとxargsで複数のファイルに点在する誤字を一括修正(置換)する

    開発をしていて、複数の誤字が見つかった。 しかもその誤字は複数のファイルに点在している。 そんな時、ファイルを開いて1つずつ置換して修正しているようでは時間がかかりすぎる。 そこで、コマンド一発で複数のファイルに点在する誤字を一括修正する。 コマンド 置換対象のファイルのバックアップを取るならこっち grep -rl "誤字" ./* | xargs sed -i ".bak" 's/誤字/修正文/g' バックアップを取らないならこっち grep -rl &qu ...
  • 【HUGO】作成日時と最終更新日時を表示させる【SEO対策】

    • 作成日時:
    • 最終更新日時:
    • Categories: others
    • Tags: hugo tips SEO対策
    SEO対策として、記事の更新日を記録することにした。 これまでは作成日時と最終更新日時が兼ねられていたが、これにより、いつ更新したかがひと目でわかるようになるだろう。 前提 このギミックが動作するHUGOのバージョン。 ローカルでのバージョン Hugo Static Site Generator v0.68.3/extended linux/amd64 BuildDate: 2020-03-25T06:15:45Z デプロイ先のNetlifyのHUGOのバージョン hugo v0.85.0-724D5DB5+extended linux/amd64 BuildDate=2021-07-05T10:46:28Z VendorInfo=gohugoio 記事ヘッダーにlastmodを追加する 記事ヘッダーにこのようにlastmodを追加する。 --- title: ...
  • 【matplotlib】フォントファイルを用意して日本語の豆腐化を修正する

    • 作成日時:
    • 最終更新日時:
    • Categories: others
    • Tags: Python matplotlib tips
    カレントディレクトリにNotoSansJP-Light.otfを配置する。 import matplotlib.font_manager as fm import numpy as np import matplotlib.pyplot as plt fprop = fm.FontProperties(fname='NotoSansJP-Light.otf') x = np.linspace(0, 1, 100) y = x ** 2 plt.plot(x, y) plt.title("タイトル" ,fontproperties=fprop, fontsize=40) plt.show() これで豆腐化の修正ができる ...
  • jQueryのオブジェクトをfor~of文でループするとJavaScriptになる問題の対処

    for~of文を使ってjQueryのオブジェクトをループすると、JavaScriptのオブジェクトになる。 その対策をまとめておく。 jQueryループ時の問題 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Hello World test!!</title> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> </head> <body> <div class="test">1</div> <div class="test">2</div> <div class="test">3</div> <div class="test">4</div> <script> let elems = $(".test"); //この時点ではjQueryのオブジェクトになっている。 console.log(elems); for (let elem of elems){ //for of文で取り出すと、JavaScriptのオブジェクトになっている。 console.log(elem); //jQueryのオブジェクトだと思ってjQ ...