価格.com で、HP Spectre x360 の価格を引っこ抜いてきて、LINE へ通知させる。

前半は、BeautifulSoup を使って、価格を部分をスクレイピング。
スクレイピングで、抜き出したい情報を成形しようとヘタな書き方になっているが、とりあえず価格のみを出せた。
# pull out "price"  from 価格.com
from bs4 import BeautifulSoup
import urllib as req

url="http://kakaku.com/item/J0000024058"

res=req.urlopen(url)
soup=BeautifulSoup(res, "html.parser")

price=soup.select_one(".colorprice")
price=price.encode('utf_8')
price=price.split('<span>')
price=price[1].split('</span>')


後半は、LINE の LINE Notify を使って、価格情報を通知。

LINE Notify
https://notify-bot.line.me/ja/

ログインするには、予めLINEアプリの「設定」で、アカウント>メールアドレス が[登録完了]になっている必要がある。

headersの Bearer の後ろの半角スペースが必要。
通知文は、payloadにまとめてあるが、msg 部分 と スクレイピングしてきた価格部分
# Notification to LINE
import requests

token="XXXXXXXXXXXXXXXXXXXXXXXXX"
url="https://notify-api.line.me/api/notify"
msg="HP Specre x360: "

payload={"message": msg + price[0]}
headers={"Authorization": "Bearer " + token}
line_notify=requests.post(url, headers=headers, params=payload)
取り敢えず、これでやりたかったことはできた。今は簡単にできてしまう。
IFTTTを使ってみて、連携していくことも考えたい。