さくらレンタルサーバーpip

2024.02.13

Logging

おはようございます、さくらレンタルサーバーでpipを使用するにはどうもライブラリのインストール場所を実行時に教えてあげないと実行できないようなので、前回までコマンドラインから叩いても上手く動作しなかったぽっい。

その対応することで、今年はVPSサーバーとはおさらば出来そうです。pipのインストールについてはいろいろな人がさくらレンタルサーバーにpipのインストール方法を書いているのでそれを模倣すればできるようになると思います。

明日へ続く。

タグ

pip, VPSサーバー, インストール, インストール場所, インストール方法, コマンドライン, さくらレンタルサーバー, ライブラリ, , 前回, 実行時,

数珠繋ぎにTweet(リプライ)するPHP言語のコードは意外にも簡単。

2021.08.28

Logging

先日、高知県はコロナ感染症が111人になったそうです。早くコロナワクチン接種?2回目を打ちたいです、ただファイザー社のワクチンなのでデルタ株のウィルスは軽症化させるだけで無症状や感染しないようにはならないという事です。それでも重症化を防げるので打たないより打った方が良いですね?。なお、混合ワクチン接種が結構無敵だとか?インドではDNAワクチン接種を世界初で承認したみたいですね。新たな変異種も防ぐことが出来れば一気にDNAワクチン接種が世界的に進みそうです。

さて、前置きはここまでとして、数珠繋ぎにTweet(リプライ)するPHP言語のコードは意外にも簡単に書けました、なお、TwitterOAuthというライブラリを使用して呟いています。

作った経緯は数珠繋ぎにする方法などは調べてもヒットしなかったので記載しようと思ったわけです。今回の方法でアファリエイトなどを紹介などや長文のツイートが行えるなどいろいろな用途に使えるかと思います。

※このソースコードはコマンドライン(CUI)から叩かないと(実行)、動かない仕様になっています。

<?php
require_once("../vendor/autoload.php");
use Abraham\TwitterOAuth\TwitterOAuth;
if ($argv[0]) {
    require_once "./tw-config.php";
    $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET);
    date_default_timezone_set('Asia/Tokyo');
    $affiliate = json_decode(file_get_contents("./affiliate.json"));
    $id = null;
    foreach ($affiliate->{date("w")} as $key=>$val) {
        $str = $id?array("status"=>$affiliate->{date("w")}[$key]->txt,"in_reply_to_status_id"=>$id):array("status"=>$affiliate->{date("w")}[$key]->txt);
        $res = $connection->post("statuses/update",$str);
        $id = $res->id;
    }
}
{
    "0": [
        {
            "txt": ""
        },
        {
            "txt": "2"
        },
        {
            "txt": "3"
        }
    ],
    "1": [
        {
            "txt": "1"
        },
        {
            "txt": "2"
        },
        {
            "txt": "3"
        }
    ],
    "2": [
        {
            "txt": "1"
        },
        {
            "txt": "2"
        },
        {
            "txt": "3"
        }
    ],
    "3": [
        {
            "txt": "1"
        },
        {
            "txt": "2"
        },
        {
            "txt": "3"
        }
    ],
    "4": [
        {
            "txt": "1"
        },
        {
            "txt": "2"
        },
        {
            "txt": "3"
        }
    ],
    "5": [
        {
            "txt": "1"
        },
        {
            "txt": "2"
        },
        {
            "txt": "3"
        }
    ],
    "6": [
        {
            "txt": "1"
        },
        {
            "txt": "2"
        },
        {
            "txt": "3"
        }
    ]
}

タグ

$affiliate, argv, Asia, connection, CUI, date, foreach, gt, json_decode, lt, null, php require_once, quot, TwitterOAuth, txt, use AbrahamTwitterOAuthTwitterOAuth, val, vendor, アファリエイト, コマンドライン,

goo-labのひらがな化API雛形を作りました。

2021.05.17

Logging

goo-labひらがな化API雛形を作りましたので、お裾分けです。YOUTUBEで解説している事を抜粋して記載します、まずAPIとはアプリケーションプログラミングインターフェイスの略です。APIを簡単に解説するとAというデータを送るとAのデータを処理して何らかの結果を返却してくれるサービスを言います。

APIとは?|仕組みやどんなAPIあるのかなど、図解を使って3分でわかりやすく解説します

今回のひらがな化APIは漢字の文字をひらがな(カタカナ)に変換して返却してくれるサービスです。自分が作った部分はひらがな化APIのサーバにデータを送信して返却データをキャッチする部分になります。APIというのはどんなAPIも同じようなものですので、一度、理屈を分かってしまうと簡単なものです。

因みにディファインの部分を自分のAPIに変更してお使いください、尚、コマンドラインから実行するように設計しています。

<?php
define("APIKEY","xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");

class Hieagana{
	public function main($str="漢字が混ざっている文章"){
		if(!$str){return false;}
		$headers = array(
			"Content-Type: application/x-www-form-urlencoded",
		);
		// app_id(必須項目)	アプリケーションID
		// request_id	リクエストID
		// 省略時は"labs.goo.ne.jp[タブ文字]リクエスト受付時刻[タブ文字]連番"となります。
		// sentence(必須項目)	解析対象テキスト
		// output_type (必須項目)	出力種別
		// hiragana(ひらがな化)、katakana(カタカナ化)のどちらかを指定してください。
		$params = [
			"app_id"=>APIKEY,
			"sentence"=>$str,
			"output_type"=>"hiragana"
		];

		$curl = curl_init("https://labs.goo.ne.jp/api/hiragana");
		curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
		curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
		curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($params));
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);  
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);  
		curl_setopt($curl, CURLOPT_FOLLOWLOCATION, TRUE);
		
		$output =  (object)json_decode(curl_exec($curl));
		curl_close($curl);

		var_dump($output);

	}
}

if($argv[0]){
	(new Hieagana)->main($argv[1]);
}

タグ

$params, APIKEY, application, argv, array, decode, false, goo.ne.jp, headers, hiragana, katakana, labs, lt, object, php define, quot, VERIFYHOST, youtube, アプリケーションプログラミングインターフェイス, コマンドライン,

ドロップシッピングCSV流し込み開設に向けて。WEB知識のある業界の方オススメします!

2018.07.06

Logging


ドロップシッピングCSV流し込みの過程。
ドロップシッピングからCSVをダウンロード、
その後、ヘッダー部分の削除を行い、CSVを10000行単位で
分割する。リナックスのコマンドで行いましたが
PowerShellやフリーソフトでも分離は可能です。
次にDBへ登録を行うプログラミングをPHP言語で記述し
コマンドラインからPHPファイルを叩く。コマンドラインで叩くほうが
処理が早いのでこちらを選びましたが、ブラウザから送信ボタンを押したときに
非同期処理(ajax)を走らせて行う方法もあります。
自分が登録したドロップシッピングのCSV容量は
850MBでした、まぁまぁ多いファイルです、これを一行単位で取り込んで
行くのですが、、、、かなり時間がかかります。
取り込み終わるのに数時間かかりました。
最初、一括CSVで取り込めないかなと思っていろいろ試しましたが515円のサーバでは
無理でしたので、10000処理を行ったら一度、PHPを終了させ
再度、開き次のファイルをパラメーター付きで実行させるシェルスクリプトを
作りました。そちらを叩いて後は終了するまで待つという方法です。
登録したDBから商品の一覧や詳細画面、カテゴリー一覧、
トップページを作らないといけないという作業が残っています。
こちら会社でも使っているSmartyで当初思ったのですが
やめてPHPテンプレートエンジン「Twig」を使用して作ることに決めました。
ここまで来て思ったのは会社での事がかなり役に立つという事です。
ノウハウがあるのとないのとはぜんぜん違うなと思います。
ドロップシッピングが軌道に乗るのかはわかりませんが、
サイトを作るというのは楽しいですね。
ちなみにドロップシッピングのURLは非公開とさせていただきます。
https://youtu.be/rrvL2-jqZ-4

タグ

CSV容量, PHPテンプレートエンジン, powershell, Smarty, Twig, コマンドライン, サーバ, シェルスクリプト, ドロップシッピングCSV流し込み, ドロップシッピングCSV流し込み開設, パラメーター付き, ブラウザ, フリーソフト, プログラミング, ヘッダー部分, リナックス, 一括CSV, 一行単位,

Node.jsをインストールしてFeedparserを使ってみて

2018.02.01

Logging


Node.jsをインストールしてFeedparserを使ってみて
サーバ上でjsを動かす利点はよく分かるのですが、いまのサーバで
jsをガリガリと書いて動かすことはないだろうという事で、コマンドラインから
叩いて動かすぐらいで十分じゃねという結論に至りました。
http-serverというのをインストールするとサーバから表示することも可能なんだってさ。
但しApacheと共存させるにはちょっとした細工が必要です。
ちなみにyum install nodejsでNode.jsはインストールできます。
あとはnpmを使用してnpm install -g http-serverでインストールし http-serverとかすると
http上でNode.jsが動いたりします(コードの記述が必要)。
今回、Feedparserを使用するのに参考させてもらったサイトの
リンクを貼っときます。
ほぼコピペで動きました(._.)
http://phiary.me/node-js-feedparser-rss-json/

タグ

B075R3WRXM, Feedparser, g http-server, http-server, node.js, npm install, yum install nodejs, コード, コピペ, コマンドライン, サーバ, サーバ上, 但しApache, 利点, 細工, 結論, 記述, 超入門,

テンソルフロー的な画像解析。

2017.09.03

Logging


Tensorflow(テンソルフロー)的な画像解析をやってみました。
コードはオープンで公開する程のものではないので仕組みだけ説明します。

python classify_image.py --image_file test11.jpg

Pythonのモジュールの上記(classify_image.py)のファイルをパラメータ渡しでキックしているだけです。
モジュールはグーグルさんが書いているのを貰ってきただけです、何とも簡単に
画像を解析してくれます。ここまでたどり着くまでには長い道のりがありましたが
手順を教えます。
まず、Tensorflowをインストールして置きます。これはググれば見つかります。
TensorBoardで可視化とかしていませんので割愛します。インストールして
任意の場所に下記のモジュール(models repo)をダウンロードします。
https://www.tensorflow.org/versions/master/tutorials/image_recognition

ダウンロードしたファイルを配下に画像を置けばおわり、その名前と共にファイルをキックして
あげるだけでOKのはずが・・・・。OKじゃねぇ、そう何か動かない。
構文間違っているじゃねぇみたいなエラーを吐くのでファイルを修正します。

この配下に「classify_image.py」ファイルがありますのでこちらを修正します。
紫で囲っている部分を削除してしまいましょう。実際、自分は削除はしませんでした。
あまりPythonの構文を分かっていないので、コマンドラインからは不必要かもしれないけれど・・・。
WEB上で動かす(呼び出す)際は必要かもしれないのでコピってコメントアウトしてます。
コメントアウト後、PHPの関数、execを使い外部コマンドでPythonを実行してみると動きます。
動いた時は感動します。ひとりニヤニヤしてました。
返却されたものを表示しているだけ・・・なんですけどね。
https://www.youtube.com/watch?v=96-5oYVi4Pg
サンプルサイトはこちらです。
http://zip358.site/labo/

タグ

AM, exec, image_file test11.jpg, models repo, python classify_image.py, TensorBoard, tensorflow, エラー, グーグル, コマンドライン, サンプルサイト, テンソルフロー, テンソルフロー的, パラメータ渡し, ファイル, モジュール, 下記, 外部コマンド, 構文, 画像解析, 配下, 関数,

CSVのデータ数万行とかをVBAでデータを加工するよりも

2016.05.30

Logging


CSVのデータ数万行とかをVBAでデータを加工するよりもPowerShellから加工するべし、、
まず、いま勤めてる会社、WEB会社なんですが
WEBシステムに使うデータの加工をする機会が結構あったりします。
時には数万行とかのデータを取り込んで
加工することがあるですね。
今まで数万行のデータは分割して
処理をしていたのですが、PowerShellで取り込んで処理する
方法があるみたいなので、これからはソチラで
加工しようかなとか思っています。
ちなみにExcelやPHPだとMバイトのデータを
扱うと処理が落ちる場合が結構あります。
とくにPHPだとファイルをアップロードする場合や
扱えるメモリの設定により処理落ちする事は
多々あります。
なので、PHP側でどうしても
処理を行いたい場合は事前にファイルを分割するか、
処理する時点でshellなどを使いコマンドラインで
ファイルを分割するかなどの方法を
取らないといけないのです。
ファイルをアップロードする時点で
処理を行うか前もって処理を行なったデータを
SQLで読み込むかなど、いろいろな方法があります。
 

タグ

CSV, Excel, Mバイト, php, powershell, SQL, VBA, WEBシステム, コマンドライン, ソチラ, データ, データ数万行, ファイル, メモリ, 事前, 処理, 処理落ちする事, 加工, 方法, 時点,