Hatena::Grouptech

id:rx7(@namikawa)の技術メモ このページをアンテナに追加 RSSフィード

過去記事一覧 | Main Blog (元RX-7乗りの適当な日々) | SBM (id:rx7のBookmark)

2019/03/31

Google Custom Search API が 403 を返す時

| Google Custom Search API が 403 を返す時 - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - Google Custom Search API が 403 を返す時 - id:rx7(@namikawa)の技術メモ Google Custom Search API が 403 を返す時 - id:rx7(@namikawa)の技術メモ のブックマークコメント

たまにハマるのでメモっておく。


Custom Search API は制限をかけることができるのだけど、私はよく"IPアドレス"の制限をかけることが多く、

移転やネットワークの構成変更で、グローバルIPアドレスが変わってしまった時に、

上記の制限で 403 Forbidden とステータスコードで怒られることがある。お恥ずかしい。


ちなみに、制限は Google Cloud Platform のコンソール画面から変更でき、以下の範囲で制限することが可能。

  • HTTPリファラー
  • IPアドレス
  • Androidアプリ
  • iOSアプリ
トラックバック - http://tech.g.hatena.ne.jp/rx7/20190331

2019/02/28

nokogiri によるスクレイピング処理が途中で止まった時

| nokogiri によるスクレイピング処理が途中で止まった時 - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - nokogiri によるスクレイピング処理が途中で止まった時 - id:rx7(@namikawa)の技術メモ nokogiri によるスクレイピング処理が途中で止まった時 - id:rx7(@namikawa)の技術メモ のブックマークコメント

色々なパターンの原因があると思うけど、今回は文字コードが原因だった。

charset = nil

html = open(url, "r:CP932") do |f|
  charset = f.charset
  f.read
end

doc = Nokogiri::HTML.parse(html, nil, charset)

↑の場合だと、取得するページにあわせて "r:CP932" を指定するような感じ。

トラックバック - http://tech.g.hatena.ne.jp/rx7/20190228

2019/01/31

Dropboxで直接表示できる画像のURLリンクを生成する

| Dropboxで直接表示できる画像のURLリンクを生成する - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - Dropboxで直接表示できる画像のURLリンクを生成する - id:rx7(@namikawa)の技術メモ Dropboxで直接表示できる画像のURLリンクを生成する - id:rx7(@namikawa)の技術メモ のブックマークコメント

DropboxでPublicフォルダに配置してある画像ファイルですが、

いつの間にか Dropbox のサイト内で表示されるようになってしまっていたので、

直接画像表示できるリンクを作るにめにはどうしたらいいのかという話。

まず、対象のファイルのリンクを取得する。

f:id:rx7:20190426145728p:image:w200


すると、以下のようなリンクが取得できる。

https://www.dropbox.com/s/xxxxxxxx/icon.png?dl=0

このリンクを2箇所以下のように書き換える。

  • "www.dropbox.com" を "dl.dropboxusercontent.com" に書き換え
  • "?dl=0" を削除

↑の例を書き換えると以下のように感じとなる。

https://dl.dropboxusercontent.com/s/xxxxxxxx/icon.png

これで直接表示されるはず。

トラックバック - http://tech.g.hatena.ne.jp/rx7/20190131

2018/01/31

UbuntuでCA証明書の更新

| UbuntuでCA証明書の更新 - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - UbuntuでCA証明書の更新 - id:rx7(@namikawa)の技術メモ UbuntuでCA証明書の更新 - id:rx7(@namikawa)の技術メモ のブックマークコメント

# curl https://example.com
curl: (60) server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none
More details here: http://curl.haxx.se/docs/sslcerts.html

とのことなので、、、

# dpkg -l | grep cert
ii  ca-certificates                  20170717~16.04.1                           all          Common CA certificates
ii  ssl-cert                         1.0.37                                     all          simple debconf wrapper for OpenSSL

# apt-get install ssl-cert
Reading package lists... Done
Building dependency tree
Reading state information... Done
ssl-cert is already the newest version (1.0.37).

# apt-get install ca-certificates
Reading package lists... Done
Building dependency tree
Reading state information... Done
ca-certificates is already the newest version (20170717~16.04.1).

パッケージは最新か。


この辺から取ってきて置き換えるしかなさそうか。

トラックバック - http://tech.g.hatena.ne.jp/rx7/20180131

2017/03/22

Ubuntuで(kernel)debuginfoパッケージをインストールする

| Ubuntuで(kernel)debuginfoパッケージをインストールする - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - Ubuntuで(kernel)debuginfoパッケージをインストールする - id:rx7(@namikawa)の技術メモ Ubuntuで(kernel)debuginfoパッケージをインストールする - id:rx7(@namikawa)の技術メモ のブックマークコメント


systemtapでゴニョゴニュやろうと実行していたら、

semantic error: missing x86_64 kernel/module debuginfo [man warning::debuginfo] under '/lib/modules/4.4.0-66-generic/build'

こんな感じでdebuginfoが見つからないとのことで、以下な感じでインストールしました。


# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C8CAB6595FDFF622

# codename=$(lsb_release -c | awk  '{print $2}')
# tee /etc/apt/sources.list.d/ddebs.list << EOF
deb http://ddebs.ubuntu.com/ ${codename} main restricted universe multiverse
deb http://ddebs.ubuntu.com/ ${codename}-security main restricted universe multiverse
deb http://ddebs.ubuntu.com/ ${codename}-updates  main restricted universe multiverse
deb http://ddebs.ubuntu.com/ ${codename}-proposed main restricted universe multiverse
EOF

# apt-get update
# apt-get install linux-image-$(uname -r)-dbgsym
トラックバック - http://tech.g.hatena.ne.jp/rx7/20170322