GUST NOTCH? DIARY

MovieSchedule

CentOSからUbuntuに移行

VirtualBox に CentOS を入れて実行させていたが、サポートが切れることもあり Ubuntu を入れることに。前にも入れようと思ったんだけど遅すぎてあきらめた。新しいPCにしたので大丈夫だろうということで。 以前のセットアップを参照したらそれでOKだった。…

さて、何を見よう? 昨日の続き

さて、何を見よう? 実際に映画を見に行こうかと思って使ってみたんだけど、やっぱりタイムラインで一覧できた方がいいなー、と思って作品一覧からの選択部分に突っ込んでみた。これで最低限欲しい機能というか、これだけでやっていけるかも。

さて、何を見よう?

さて、何を見よう? 連休中に作ってて、1週間ほどバグだししてみたので公開してみました。 最初、よく行く映画館のこれからの上映時刻を知りたくて一番最初の「さて、何を見よう?」をCGIで作ったんですね。記録によると2005年のことのようです。どうやら「…

一応復旧

Movie Schedules in XML 「映画の時間」(ジョルダン)からデータを取得するようにして、一部情報の劣化がありますがおおよそ復旧させました。 今週公開かどうかとか、吹替の情報は取れるけど字幕の情報はないとか、IMAXがLaserかどうかとか、劇場の作品一覧…

XML の生成に目途がついた

結局ジョルダンからの取得を続けてます。これまでとまったく同じ情報が得られるわけではないので多少情報不足になる部分もあるけど、とりあえずほぼ同等の内容は生成できるようになったと思う。 ただ、地域分けが違っているのでフロントエンド側にも手を入れ…

BeautifulSoup でタグを作るときに name という属性を与えられない

tag = soup.new_tag('tag_name', name='hoge') って書くと name が予約語らしくてエラーになる。 tag = soup.new_tag('tag_name') tag.attrs['name'] = 'hoge' とやるといいらしい。

映画館リストの取得

先日書いたように、MovieWalkerからは映画のスケジュールを取得するのが難しくなったので、代替サイトを検討していました。結果、ジョルダンのやってる「映画の時間」がよさげかな、という感じです。 映画の時間|最新映画情報・上映時間検索・レビュー ポイ…

スケジュールが取れなくなった

今月に入ってからなのかな?なんかスケジュール取れてないなー、と思っていたんですが、コロナのせいでスケジュールが不定なのかと思っていたんですよ。でも、スケジュールはあるにも関わらず取れてないっぽいので調べてみました。そしたら、MovieWalkerのス…

TreeBuilder で HTML5 を解析させる

先日書いたように MovieWalker のサイトがリニューアルして、サイト構造やソースも変わってしまった。今回はHTML5で書かれてて、構造的にはキレイになってた。 タイトルのカナよみとかの情報がなくなってたけど。 さて、TreeBuilderで解析しようとしたら、う…

MovieWalkerのサイトがガッツリとリニューアル

MOVIE WALKER PRESS ムービーウォーカー プレス あちゃー、かなり手を入れないといけないな、これは。

スクリプトを修正

ちゃんと動かしたはずなのにスケジュールが更新されていなかった。 調べたら xml ファイルが更新されていない。HTMLファイルから返還する際に生成に失敗しているようだ。 確認したら途中でエラーがでて止まる。 原因を調べるために元のHTMLファイルを確認し…

年内の日数の数え方が間違ってた

Movie Schedules in XML Webでの各劇場のスケジュール表示で「今日だけ表示」にしたとき、うるう年における1日の追加の際に「2月より後」ではなく「2月以降」に1日追加していたために、2月の日付が1日進んでいる状態になっていた。4年ごとの2月にしか発生し…

上映の無い日は削除

上映がない日もエントリがあったせいで、その日の上映があるけどスケジュールが不明なような状態になっていたので修正。

処理を変更

Movie Schedules in XML 週末にスケジュールを更新したら、タイトルは取れてるけど各日のスケジュールが取れてなかった。 例によって、HTMLの記述が変わっていたからなんだけど、DOM的には等価でテキストレベルでの違いが出てた。 つまり、今までは行単位の…

バグ修正

データには間違いがなかったんだけど、映画館リストを更新するときに、各地域の最後に余計なものが入っていた。映画館の情報であるタグを特定するルールにマッチする別のタグがあったせい。条件を厳しくして解決。

作品の時間がとれていなかった

更新されないなと思ったら処理中にエラーになっていた。 作品ページのタグが変わったらしく、各作品の上映時間が取得できず、ターゲットのタグがないためにエラーで終了していた。 タグの存在チェックをするようにして現在のものに合わせた。

CentOS に ncftp をインストール

昨日の件、OS側の依存関係を解消するのは面倒なので、別にあった CentOS で試してみた。そしたら問題なくアクセスできる。 ということでそっちに移行。 FTP クライアントがなかったので ncftp を入れる。標準のリポジトリにはないらしく、別のリポジトリを指…

LWP が https サイトにアクセスできない

某サイトからスクレイピングしていたのだけど、今週に入ってアクセスに失敗しているみたい。wget は問題なくて、Perl で LWP::Simple::get している場合に失敗している。 VirtualBox 上の Vine Linux でやってたんだけど、LWP::Protocol::https をアップデー…

Perl と Python

とりあえず映画館リストもXMLにしようかと思って、Python で書こうかなぁと思ったりしたんだけど、結局慣れてるPerlで書いてしまうっていう。

終了時刻を表示

横断検索時に各作品の終了時刻も表示するようにしてみた。 Movie Schedules in XML ハシゴアプリを作るとしたら、 劇場を選択できる 作品を複数指定できる 指定作品の一覧を表示 適合しない時間の作品を削除して絞り込み ということができるUIがあれば、個人…

上映時刻の情報を反映

先日も書いたとおり、作品の上映時間もわかるようにした。 Movie Schedules in XML 川崎で映画をハシゴ

XSLT を修正しようとしたのだが

このとき以来なのかな? 中見てもすっかり忘れてる。その前に書いたのはもう前世紀になるはずだし。

作品の上映時間を反映

作品の上映時間を取ってくるようにした。次回のスケジュール更新ですべてに反映させる。 現時点では北海道の映画館スケジュールにだけ runtime attribute が反映させてある。 データには反映してあるが、表示の方がまだ対応できていない。 同時に「4DX」「MX…

HTML::TreeBuilder のインストール

sudo perl -MCPAN -e shell install HTML::TreeBuilder

川崎の映画館をハシゴ検索

ざっくり雑な感じで実装してみました。 川崎で映画をハシゴ 「さて、何を見よう?」は常用してるけど、これは使うかな……? window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementByI…

文字列のescapeし忘れ

テキストにアポストロフィがあったところでエラー。文字列を指定する引用符をシングルにしていたのでSQL文を構築したときに対応がおかしくなった。 from xml.sax.saxutils import * で escape() した。 escape_table={ "'": "'" } しといて escape(str,…

MySQL での insert にはまる

select できるのに insert できないのはなんでだ?ということで grants やらいろいろ確認した結果、commit が必要だったというオチ。 エントリ1つでテストしてたら、行が増えたら存在確認がうまくいってない……。

Python3 の文字列書式指定にはまる

C や Perl のノリで %s で変数を渡そうとしたのだがエラーに。ネットでみた感じのサンプルを見てもそのようになっていたのでハマる。 Python3 では .format() で書式指定するらしい。 " {0}, {1}".format( arg0, arg1 ) のように書くといいようだ。 更にSQL…

mysqlclient をインストール

import MySQLdb を書いたらエラーになった。 sudo yum -y install python-devel mysql-devel pip install mysqlclient 参考: CentOS7 に mysqlclient (MySQL-python fork) をインストールする - CUBE SUGAR CONTAINER

Beautiful Soup のインストール

pip install beautifulsoup4 pip install lxml あー、DOM指定できるのでチョー楽ちん。