掲示板の過去ログに関して
4月14日にハルさんが旧アドレスの方に投稿していらっしゃいますが、
>こちらの掲示板は夏頃に終了してしまう訳ですが、自作に役立つ情報の宝庫であるのでこのまま消えてしまうのはあまりにも惜しいです。
>ローカルでも何でもいいのでログを保存する方法は無いのでしょうか?
私も同意見です。
過去ログを保存する方法はないのでしょうか。
teacup. の掲示板ログ保存プログラムが出来ましたのでお知らせいたします。
(Windows 環境で自作ヘルプ掲示板が保存できることは確認済みです。利用方法は README をご覧ください)
https://github.com/suwasakix/scrape_teacup_bbs
ログの保存 or 入手手段が複数ある状況ですが、どの手段を選ばれるかについては皆様の判断に委ねます。
AUDIO自作ヘルプ掲示板のログをZIPで固めたものをギガファイル便にアップしました。
ダウンロードURLは
https://3.gigafile.nu/0509-jfa3343908d88ae34ccabf199291911fa
ダウンロードPASSは「0305」です。
ファイルサイズは328MBでCRC32は2DDB9FF8。ダウンロード期限は5月9日までです。
期限を過ぎたら自動で削除されますが、アップロードしたのがまずいようなら期限前でも削除できるので教えてください。
ヤッタラン 様
こちらの掲示板に知らせていただきありがとうございます。
皆様も
掲示板のログを保存する方法を模索してくださり、ありがとうございます。
ログを保存する方法は既に確立されたようですが、私も「Website Explorer」というフリーウェアを利用して
新着順に表示された掲示板を保存することができました。
前後ページの移動、外部以外の画像データへのリンク、各記事へのリンクが可能です。
しかし解析に非常に時間がかかり、半日ずつソフト動かして3,4日かかりました。またオフライン用にダウンロードするのに2,3時間はかかります。
ログのサイズは1GBを超えましたが、サイト解析のデータは4MB以下です。解析データをどこかにアップロードし、ログは各々でダウンロードしてもらうという形が取れるのでは無いかと思います。
ただソフトがやや安定しなくしばしばフリーズすること、操作に少しクセがあること、ログのサイズが大きいことを考えると
Trusgoさんが作られたログのほうが優れていると思います。
お話し中失礼します。掲示板のログが取れました。AUDIO自作ヘルプ掲示板を投稿順に表示切替してから全ページ保存
して、前後のページ移動のリンクだけ使えるように編集したものを作りました。HTMLファイルなのでブラウザでコピー元
と同じように読むことができます。
検索や投稿フォームを削除するなどの手は加えましたが、誓って投稿された文章には触っていません。作ったログは保存
する時にページごとのフォルダに分かれて散り散りになった画像ファイルを入れたフォルダ1個とHTMLファイル861個
になりました。ほかのサイトに直接リンクしてある画像やPDFやサイトのページなどでURLが変わったり削除されたりして
保存できなかったものはそのままになっています。圧縮しない状態のサイズは380MBほどになりました。
くうくさんの修正を組み込んだところ、BBSのスクレイピングは最後まで完走できました。
ありがとうございました。
# くうくさんって、もしや ねぐらにお住まいの方ですか
ただ、生成物を確認したところテキストと画像ファイルが全くリンクされていない、サムネイルの画像ファイルまでは
保存されていない、といった課題も見つかっています。このプログラム、まだ改善必要なようです。
はじめまして(10年以上前、なんでもあり掲示板・おでん板に投稿したことがありますが、もう古い話ですので)
> 2012年12月28日(金)20時00分56秒 の投稿で エラーが出て止まってしまいました。
> 原因は、参照先の画像ファイル ("http://homepage2.nifty.com/Kame/syasin/71A.JPG") が現存しないため。
> 困った。
responce = requests.get(src)
with open("img/" + "{}".format( str(uuid.uuid4())[:6] + imgfile ), "wb") as f:
f.write(responce.content)
を
try:
responce = requests.get(src)
responce.raise_for_status()
except requests.exceptions.RequestException as e:
print("エラー : ",e)
else:
with open("img/" + "{}".format( str(uuid.uuid4())[:6] + imgfile ), "wb") as f:
f.write(responce.content)
にすれば、存在しない参照先画像はパスしてくれると思います。ちなみに responce は response だと思いますが、オリジナルのままにしています。またソースコードのインデントが半角空白では投稿上再現されないので全角空白で代用しております、半角空白に置き換えてください。
なお、DoS 攻撃と間違われないように、処理時間はかかってしまいますが for ループに time.sleep(10) 等を入れておくほうが良いかもしれません(冒頭に import time が必要)。
> それでようやくBBSのスクレイピングを開始してくれましたが、やはり結構な時間がかかりそうです。
2012年12月28日(金)20時00分56秒 の投稿で エラーが出て止まってしまいました。
原因は、参照先の画像ファイル ("http://homepage2.nifty.com/Kame/syasin/71A.JPG") が現存しないため。
困った。
> どなたかpythonを使える方がいらっしゃったら、試して頂けないでしょうか。
> https://zenn.dev/oskgw_log/articles/4002472fca930f
Ubuntu Desktop (20.04) の環境で試してみました。
ChromeDriver のインストールが必要なほか、python3 に selenium ライブラリのインストールが必要だったり、
RequestsDependencyWarning やら DeprecationWarning やらが出てみたりで中々敷居が高いです……
あと、元のプログラムのまま「大人の自由空間BBS」をスクレイピングしようとしても NoSuchElementException が
出てしまって動かず、コード修正が必要になります。
具体的には、プログラム中の『center[2]』を『center[1]』に変更します。(3箇所)
それでようやくBBSのスクレイピングを開始してくれましたが、やはり結構な時間がかかりそうです。
teacupの終了に悩まれている方は他にもいるようで、「レンタル掲示板 teacup.のデータを救出する」ということでteacup掲示板のデータをテキストと画像ファイルとして回収するソフトのソースコードを公開して下さっている方がいらっしゃいました。
チョット試してみたのですが、「環境の設定は各自お願いします。」の部分に引っかかっているらしいエラーが出ていて実行できませんでした。
どなたかpythonを使える方がいらっしゃったら、試して頂けないでしょうか。
https://zenn.dev/oskgw_log/articles/4002472fca930f
皆様
こちらではお初になります。
> 過去ログを保存する方法はないのでしょうか。
以前、ぺるけさんの掲示板でも話題になったような気がしますが、
世の中には世界中のホームページをアーカイブする、というとんでもない
ことを実行する方が居るんだそうで
その辺の解説は、例えばこちら
https://japan.cnet.com/article/35076968/
で、試しにwayback machineにアクセスして、ぺるけさんのURLで
検索すると、過去の変遷を辿ることが出来ます。
最も5年後、10年後は判りませんが・・・