#author("2020-06-24T10:28:38+09:00","default:nobuoki","nobuoki")
#author("2020-06-24T10:29:52+09:00","default:nobuoki","nobuoki")
* PukiWikiのyoutubeプラグインをスクレイピング [#sf019f66]

便利に使わせて頂いております(作者に感謝!)
[[PukiWikiのyoutubeプラグイン改良版2020。HTML5対応 -【車中泊まとめWiki】(PC版)>https://syachuhaku.fxtec.info/index.php?PukiWiki%E3%81%AEyoutube%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E6%94%B9%E8%89%AF%E7%89%882020%E3%80%82HTML5%E5%AF%BE%E5%BF%9C]]

このページから youtube.ini.php を取り出すには
HTMLソースを取得し、文字実体参照部分をデコード、HTMLタグを取り去ったのち '<?php' から '?>' で括られた部分を取得します

** 準備 [#u4c7b11b]
#prism(bash){{{
url='https://syachuhaku.fxtec.info/index.php?PukiWiki%E3%81%AEyoutube%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E6%94%B9%E8%89%AF%E7%89%882020%E3%80%82HTML5%E5%AF%BE%E5%BF%9C'
}}}

** その1:w3m [#p666b4ed]
** その1:perl [#qe89a369]
#prism(bash){{{
sudo dnf -y install w3m
w3m -dump "$url" | sed -n '/<?php/,/?>/p' >youtube.ini.php
sudo dnf -y install perl-HTML-HTML5-Entities
curl -s "$url" | perl -MHTML::HTML5::Entities -pe 'decode_entities($_)' | sed -n '/<?php/,/?>/p' >youtube.ini.php
}}}

** その2:perl [#qe89a369]
** その2:w3m [#p666b4ed]
#prism(bash){{{
sudo dnf -y install perl-HTML-HTML5-Entities
curl -s "$url" | perl -MHTML::HTML5::Entities -pe 'decode_entities($_)' | sed -n '/<?php/,/?>/p' >youtube.ini.php
sudo dnf -y install w3m
w3m -dump "$url" | sed -n '/<?php/,/?>/p' >youtube.ini.php
}}}

これら2つはほぼ同じものが得られますが、
行末スペース(例:31行目)、タブ文字(例:33-36行目)の扱いが違うようです

#ref(youtube-plugin.png)

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS