数日前、「WeChat を使って毎日ガールフレンドにおやすみを言う方法を教える」という記事をインターネットで見て、とても魔法だと思いました。その後、それを調べてみたところ、そのアイデアは実に賢いものであることがわかりました。よし、建設を始めよう!サーバーがあって、Python 環境があって、IDE が開いている…しかし…しかし…重大な問題に気づきました…彼女がいないのです(T_T)…
WeChat の開発には、テンプレート メッセージ インターフェイスと呼ばれる魔法のインターフェイスがあり、ユーザーの openid に基づいてカスタマイズされたテンプレート メッセージをユーザーにプッシュできます。サーバー側でいつでもメッセージをユーザーにプッシュします (ユーザーが公式アカウントをフォローしている場合)。
まとめると、1. テンプレートメッセージの形式をカスタマイズできる、2. テンプレートメッセージの内容をカスタマイズできる、3. テンプレートメッセージの送信時刻をカスタマイズできる、の 3 点になります。次に、これらのプロパティを使用して、自分たちのためのおはようプログラムを作成できます。
発信アドレス: http://open.iciba.com/dsapi/
リクエストメソッド:GET
リクエストパラメータ:
パラメータ | 必須 | タイプ | 説明する |
---|---|---|---|
日付 | いいえ | 弦 | 形式は2013-05-06 です。 date が空の場合は、デフォルトで現在の日が使用されます。 |
タイプ | いいえ | 弦 | オプションの値は、 date に基づいたlast とnext です。last last 前日を返し、 next 翌日を返します。 |
戻り値の型: JSON
JSONフィールドの説明:
属性名 | 属性値の型 | 説明する |
---|---|---|
シド | 弦 | 毎日のID文 |
tts | 弦 | オーディオアドレス |
コンテンツ | 弦 | 英語コンテンツ |
注記 | 弦 | 中国のコンテンツ |
愛 | 弦 | 1 日あたりの文ごとの「いいね!」の数 |
翻訳 | 弦 | パワーワードエディタ |
写真 | 弦 | 画像アドレス |
写真2 | 弦 | 大きい画像アドレス |
キャプション | 弦 | タイトル |
日付変更線 | 弦 | 時間 |
s_pv | 弦 | 閲覧数 |
sp_pv | 弦 | 音声レビュービュー |
タグ | 配列 | 関連タグ |
fenxiang_img | 弦 | Weibo での共有に推奨される合成写真 |
通常の戻り例:
{
"sid" : " 3080 " ,
"tts" : " http://news.iciba.com/admin/tts/2018-08-01-day.mp3 " ,
"content" : " No matter how hard we try to be mature, we will always be a kid when we all get hurt and cry. " ,
"note" : "不管多努力蜕变成熟,一旦受伤哭泣时,我们还是像个孩子。 " ,
"love" : " 1966 " ,
"translation" : "小编的话:这句话出自小说《彼得·潘》。岁月永远年轻,我们慢慢老去。不管你如何蜕变,最后你会发现:童心未泯,是一件值得骄傲的事情。长大有时很简单,但凡事都能抱着一颗童心去快乐享受却未必容易。 " ,
"picture" : " http://cdn.iciba.com/news/word/20180801.jpg " ,
"picture2" : " http://cdn.iciba.com/news/word/big_20180801b.jpg " ,
"caption" : "词霸每日一句" ,
"dateline" : " 2018-08-01 " ,
"s_pv" : " 0 " ,
"sp_pv" : " 0 " ,
"tags" : [
{
"id" : null ,
"name" : null
}
],
"fenxiang_img" : " http://cdn.iciba.com/web/news/longweibo/imag/2018-08-01.jpg "
}
リクエスト例:
Python2リクエストの例
#!/usr/bin/python2
#coding=utf-8
import json
import urllib2
def get_iciba_everyday ():
url = 'http://open.iciba.com/dsapi/'
request = urllib2 . Request ( url )
response = urllib2 . urlopen ( request )
json_data = response . read ()
data = json . loads ( json_data )
return data
print get_iciba_everybody ()
Python3リクエストの例
#!/usr/bin/python3
#coding=utf-8
import json
import requests
def get_iciba_everyday ():
url = 'http://open.iciba.com/dsapi/'
r = requests . get ( url )
return json . loads ( r . text )
print ( get_iciba_everyday ())
PHPリクエストの例
<?php
function https_request ( $ url , $ data = null ){
$ curl = curl_init ();
curl_setopt ( $ curl , CURLOPT_URL , $ url );
curl_setopt ( $ curl , CURLOPT_HEADER , 0 );
curl_setopt ( $ curl , CURLOPT_SSL_VERIFYPEER , 0 );
curl_setopt ( $ curl , CURLOPT_SSL_VERIFYHOST , 0 );
if (! empty ( $ data )) {
curl_setopt ( $ curl , CURLOPT_POST , 1 );
curl_setopt ( $ curl , CURLOPT_POSTFIELDS , $ data );
}
curl_setopt ( $ curl , CURLOPT_RETURNTRANSFER , 1 );
$ output = curl_exec ( $ curl );
curl_close ( $ curl );
return $ output ;
}
function get_iciba_everyday (){
$ url = ' http://open.iciba.com/dsapi/ '
$ result = https_request ( $ url );
$ data = json_decode ( $ result );
return $ data ;
}
echo get_iciba_everyday ();
このインターフェースの公式ドキュメント (1 日あたり 1 文): http://open.iciba.com/?c=wiki
参考:Kingsoft PowerWord・開発プラットフォーム
パブリック プラットフォーム テスト アカウントをスキャンしてログインし、テスト アカウント アドレス https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login を申請します。
携帯電話でのログインを確認する
新增测试模板
見つけて、テンプレート メッセージを追加します
テンプレートのタイトルに每日一句
入力し、以下のテンプレートの内容を入力します
{{content.DATA}}
{{note.DATA}}
{{translation.DATA}}
送信して保存した後、後で使用するため、模板ID
覚えておいてください。
测试号信息
を見つけて、後で使用するappid
とappsecret
覚えておいてください。
测试号二维码
見つけます。携帯電話でこの QR コードをスキャンすると、右側のリストにニックネームが表示されます。この WeChat ID は後で必要になるので覚えておいてください (注: この WeChat ID は実際の WeChat ID ではありません)。
このプログラムの 4 か所を変更するだけです。コメントを参照してください。
このプロジェクトは、 Python2.x
、 Python3.x
、 PHP
、 Linux shell
、およびその他の言語の実装を提供します。適切なプログラムを自分で選択できます。
プロジェクト ディレクトリ内のcrontab.txt
Linux のスケジュールされたタスクの書き込み形式であり、 main.*
ファイルはプログラムの実行エントリ ファイルです。
Linux 上でプログラムを実行する
携帯電話で確認すると、毎日のメッセージが届いています
Linux でスケジュールされたタスクを設定する
crontab -e
次のコンテンツを追加します
0 6 * * * python /root/python/iciba/main-v1.0.py
注: 上記の意味は、この Python プログラムを毎日6:00
に実行することです。スケジュールされたタスクが正常に設定されているかどうかを確認する
crontab -l
この時点でプログラムの展開は完了です。明日の6:00
にチェックしてください。 レンダリングは次のとおりです
このプロジェクトのアドレス: https://github.com/varlemon/wechat-iciba-everyday
トップに戻る