各種APIのテストとか。

お久しぶりです。

最近仕事とかプライベートが忙しく、完全に放置してました。

なお、楽しみにしてる人は・・・。

さて。今回のネタは insomniatalend api tester

の二つです。

得意分野がそれぞれ違うので、私は使い分けしてます。

insomniaはスタンドアロンで動くけど、動的パラメータや戻りからの値を引き継いだりするのが難しい。

talend api testerはブラウザ依存(chrome)だけど、動的パラメータの扱いが強い。

具体的にキャプチャ貼ったりしてお見せするのが良いと思うのですが

如何せん仕事のデータなので貼れないのです・・・・・・申し訳ない。

今日はご紹介までに。

使い方が判らない方いたら言っていただければお教えしますよ!

最近はやりのVRChat APIなんかはinsomniaのほうがやりやすいです

MTセットアップ中に、インデックスサイズが大きすぎるといわれた件についてのまとめ

MTを新規セットアップ中に、インデックスサイズが大きすぎるよ!ってエラーが
出て、インストールができませんでした

 

色々調べてみると、DBの文字コードがutfからutfmb4に切り替わったことが原因のようで。

ネット見てると、

ROW_FORMAT=DYNAMIC

にしてあげると、直るってあったんですが、どこでDDL生成してるかが皆目さっぱりでした。

が、ついにみつけ、問題になっている箇所を特定できました。

「MTセットアップ中に、インデックスサイズが大きすぎるといわれた件についてのまとめ」続きを読む

[from itmedia] CAPTCHAを巡るAIとAIの闘い

http://blogs.itmedia.co.jp/appliedmarketing/2018/01/captchaai.html

 

captch不要の時代が来るなんて誰が予想したでしょうか。
ロボット判別のためのチェックボックスはよく目にしますが、まだ新しい
チェックすら不要とというのはみたことありません。
読者の方で、見かけた人教えて下さい

wkhtmltopdfの使い方

Debian+PHPでwkhtmltopdf を触る機会があったので、軽くまとめを。

まずこれはなんぞや。ってところから。

帳票出力したりするのに、PDFを出力することがよくありますよね。
そんなときに使えるミドルウェアの一つです。
ほかにも、mPDFとか、TCPDF とかがあります。

そんな中でも、頭一つ飛び抜けているのが、今回利用したwkhtmltopdfです。

HTMLからPDFを得ることが出来るのですが、HTMLの解釈部分にWebKitが使われており
CSS3やHTML5等ももそのままの形で出力できます。

で。帳票というと、Header, Footer(見出しとページ数とか)がつきものですよね。。

Debianを利用している環境であれば

# apt-get install wkhtmltopdf

でインストールし

$ wkhtmltopdf http://www.yahoo.co.jp yahoo.pdf

といった感じで、pdf出力ができます。

----------- ここから先は、header, footerを利用する人のみ必要な箇所です。 ---------------------

上記のバージョンではQTのパッチがあたっていないためheader, footerを指定することが出来ません。

なので、もしインストールしている人は

# apt-get purge wkhtmltopdf

するか、インストールしっぱなしでもいいので、公式サイトからパッケージをダウンロードして展開する必要があります。

公式サイトから、最新(2016/07/08時点では、0.12.3.2 が最新でした。

で、このファイル、よく見るとxz という拡張子がついており、tar.gzのように、tar xzvf では解凍できません。
tar Jxvf wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
で、解凍します(tarのバージョンによります。詳しくはググってください)
また、上記はx64です。i386の場合は、素直にx86バージョンをダウンロードして下さい。

解凍したフォルダを、/usr/local/wkhtmltopdf 等にコピー(移動でもかまいませんよ?)して・・・
いよいよ、本番のheader, footerを入れる作業に入ります。

「wkhtmltopdfの使い方」続きを読む

Pythonでwebページのキャプチャを取得

今日もPython

というわけで、PythonでChromeDriverを使って、キャプチャ取得する方法をまとめます。

PC/Mobileを引数で指定して、Mobileの場合はChromeのモバイルエミュレートで
取得する事にしました。

JavaでもChromeDriver使えるのですが、「すっごく重い」「メモリ食いまくり」でした。
代替案として出てきたのがPythonです。
以下、実際のコードを交えながら説明していきます。

まず。前提として、サーバーに導入されていないであろう、chromedriverはインストールしておいてください。
chromedriverは、apt-get, yum にて導入可能なはずです。

インストールできない場合は、こちら より、ダウンロードして任意のパスへ導入してください。

また、普通にpythonを使っているだけだと、python用のselenium, xvfbwrapperも入ってないはずなので
pip install selenium
pip install xvfbwrapper

をコンソールで実行し、インストールしてください(rootに準ずる権限が必要です)

「Pythonでwebページのキャプチャを取得」続きを読む

Pythonで簡単マルチスレッド(マルチプロセスではない)

続けての記事になりますが、Pythonって、ほかの言語を触っている人なら入り口がとても広い言語だと私は思います。
強いて言うと、インデントの縛りが鬱陶しい位でしょうか。

今回は、マルチスレッドを簡単に実装する方法についてちょっとまとめてみました。

よろしければお付き合いください。

「Pythonで簡単マルチスレッド(マルチプロセスではない)」続きを読む

お久しぶりです&777TOWNで「ファイルの更新に失敗しました」エラー(解消済み

この記事をご覧のみなさま、お久しぶりです。atLastです。

体調面等の調整で、数か月空いてしまいました。

また、技術系の記事をまとめていきたいと思いますので、今後ともよろしくお願いします。

さて。今日の本題。
777TOWNを遊ぼうとして、「ファイルの更新に失敗しました」のエラーが発生する場合に
有効な対処が見つかりましたので、書き残しておきます。

※公式で報告されている方法ではありません
※PC(特にネットワーク回り)への知識が必要です。(ということにしておきます)

以下の方法は、私の環境依存の可能性もありますので、必ず解決するとは限りません。

環境は
・OS: Windows10 x64

「お久しぶりです&777TOWNで「ファイルの更新に失敗しました」エラー(解消済み」続きを読む

一身上の都合により、しばらくお休みします。

体調面での悪化により、毎日書くのが無理になりました。

ぼちぼち更新しますので、宜しくお願いします。

AjaxRequestなんだけど、HTTP_X-Requested-Withを付けない

$.ajax({
	type: 'GET',
	url: '/analyze/',
	data: 'lang=ja&device=desktop&url=' + encodeURI(_target_url),
	beforeSend: function(xhr){
		xhr.setRequestHeader('X-Requested-With', {toString: function(){ return ''; }});
	},
)};

jqueryのbeforeSendを使うことで、送信前にリクエストヘッダの書き換えを行い X-Requested-Withの値を空にすることで、Ajaxリクエストと認識させない

PhantomJSで、UserAgentをランダム化する

PhantomJSとは、QtWebKitをベースとしたヘッドレスブラウザです。

Googleで検索すると、オートテストや、スクリーンキャプチャなどに用いられています。

オートテストの項目の中で、「ページの表示速度をチェックする。」という事があると思います。

このとき、PhantomJSのexamplesについてくる、「loadspeed.js」がほぼそのまま利用できるのですが
ランダムなUserAgentでのテストを要求されるパターンもあるかと思います。

ここでは、PhantomJSに対し、ランダムなUserAgentを設定する方法を紹介します。

「PhantomJSで、UserAgentをランダム化する」続きを読む

  • entry24ツイート
  • Google+