自動でレスしまくるツールの作成方法
■ このスレッドは過去ログ倉庫に格納されています
ここで説明するのはWindowsと「iMacros」を使う方法 javascriptを書くことになるが、「forループ」が理解できるレベルのプログラム知識があればあとはググればなんとかなる 自分が最初に作った時はそのレベルだった これをどこのスレで使うのか。本スレか、オフスレか。それは貴方次第 ■iMacros ウェブブラウザをマクロで自動操作するFirefox拡張機能 ■iMacros導入 古いバージョンのFirefoxとiMacrosでないと目当ての機能が使えない ブラウザは古いバージョンのFirefoxの機能を継いで開発を続けてるものでも可能。Pale Moonとか Pale Moonを使う方法 https://teilab.net/imacros-pale-moon/ 過去VerのFirefoxを使う方法 https://teilab.net/imacros-setting/ ■スクリプトを組む ここからは解説するのは面倒臭いので質問があったら答えていくようにする 解説サイトを幾つか紹介 https://shinei-systems.co.jp/webcreate/ec/how-to-use-imacros https://toolmania.info/post-7963/ https://www.koikikukan.com/archives/2014/06/24-013333.php http://imacros-webauto.info/imacros/cooperation-imacros-and-javascript/ 一応、作ることになる3つのファイルについて紹介しておく ・.iim iMacrosを動かす命令が書かれたファイル ブラウザのiMacrosのウィンドウから選択でき、実行すると書かれてある通りにiMacrosがブラウザを操作する iMacrosの「Record」ボタンを押してからウェブページのどこかをクリックしたり入力したりといった操作をすると、その操作内容を再現する命令が「#Current.iim」ファイルに自動で記述されるので、これが命令文の理解の助けになる なお、連投のような複雑なことをするなら、iMacrosウィンドウから直接実行するのは後述のjavascriptの方になる ・javascript .iim同様にiMacrosから実行することができる .iimはjavascriptからも起動でき、その際にjavascript側で指定した任意の値を渡すことができる javascriptはウェブページの情報を解析することができるので、たとえばエラーページに飛ばされた時にその状況を判断して.iimに渡す値を指定したり、実行する処理を変えたりとかできる window.document.getElementsByClassNameとかそういう系のメソッドでウェブページの情報を解析できる 分からなければググるか質問してね ちなみにfirefoxはF12キー→コンソールから開いてるページ上でjavascriptのテストができる ウェブページの構成要素を見るときはF12キー→インスペクター ・CSV 投稿するレスの内容など、前もって決めてる固定的な値はGoogle Spreadsheetやエクセルとかに記述してCSVファイルに出力しておくと管理がしやすい CSVは.iimから読み込むことができる 絶対に使う必要があるわけではない ウェブページから取得したデータを保存するのもCSVの主な使用用途の一つだが、連投においては多分使わない >>4 自動安価とは? アンカー付きのレスを自動で投稿するのならiMacrosでできるよ 作ってて詰まったら気軽に質問してくれ 指定したワッチョイの書き込みを検知したら そのワッチョイのレス番に安価して書き込みたいです >>6 なるほど それも可能 過去に似たようなものを作ることに成功したから間違いない window.document.getElementsByClassName('thread')[0].querySelectorAll("div[data-id]") で全てのレスを配列で取得できるからそしたら名前を調べて指定する名前を検知したらレス番を取得してアンカーレスを作ればいい この説明を理解できるようになるにはまず普通に連投できるくらいにはiMacrosの理解を進める必要があるのだが・・・わからないことがあったら聞いてくれ なるほど。ありがとうございます。 自動ツール作成に挑戦してみます。 >>2 で紹介したPale Moonだが、最新版は目当てのiMacrosが使えない なのでバージョン28.17.0以下にする必要がある 入手はこちら https://pale-moon.jp.uptodown.com/windows/versions あとユーザーエージェントを新しめのブラウザのものに偽装しないと書き込むときに「いい加減に新しいのにしましょ」エラーが出る Pale Moon用ユーザーエージェント偽装アドオン https://addons-legacy.palemoon.org/addon/pmplus/ このアドオンを導入したら Pale MoonのTools→Permissionsで『Permissions Maneger』を開く リストから目当ての5chの板のURLを選択する 「Override user agent」のフォームに書き換えたいユーザーエージェントを入力して「Save」 ユーザーエージェントはこのスレから拾ってこれる https://nova.5ch.net/test/read.cgi/operatex/1645891922/ たとえば「Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36」とか なお専ブラのユーザーエージェントを使うと高確率で「不正なPROXYを検出しました」といったエラーが出るのでウェブブラウザのを使おう 進展が無さそうなので自分で昔作ったマクロを今でも動くように作り直してしまった ダウンロードはこちら https://www.dropbox.com/s/kb34ajljtv92q3o/rentou.zip?dl=1 iMacros導入までは >>2 ,9 ダウンロードして解凍して出てきたフォルダをiMacrosのフォルダに移動。 iMacrosフォルダは多分デフォだとDocumentsにある。 ちなみにブラウザのiMacrosウィンドウからManage→Settings→PathsでiMacrosフォルダの場所の変更可能。 解凍して出てきたフォルダの中にある「textNoAnker.csv」「textReply.csv」に投稿する文を記述する。 エクセルとかのcsvを編集できるアプリで編集する。 「textNoAnker.csv」がアンカー指定せずに投稿するときに使われる文で、「textReply.csv」がアンカー指定して投稿するときに使われる文。 1行ずつ順に投稿に使われていく。 なお後述の設定次第では、どちらか一方のCSVファイルだけをアンカー無指定・アンカー指定のどちらの投稿にも使うようにすることができる。 解凍して出てきたフォルダの中にある「run.js」の最初の方にマクロの動作の設定箇所があるので、テキストエディタで開いてそこを自分に合うように設定する。 解説はファイル内に書いてある。 iMacrosフォルダの位置の指定は必須。 設定が済んだらブラウザのiMacrosウィンドウを開いて「run.js」をダブルクリック。 出てきた入力フォームにスレのURLを入力すると連投が開始される。 わからないことや謎のエラーが出たりしたら質問してね。 >>10 バグがあったので修正した もし既にダウンロードした人がいたならもう一度ダウンロードして置き換えてくれ 基本情報の資格勉強してて手付けれてなかっです。連投ツールありがとうございます JavaScriptは今後勉強したいと思ってたのでとても参考になります 時間できたら機能追加とかしてみたい。 厚かましいかもしれないですけど バグ修正前のjs残ってたら欲しいです 見比べてみたい >>13 バグ修正前のは残ってません 趣味独学なので参考にされるのは恥ずかしいが… ところで設定の最後にある「skipPost」がもしtrueになってたらfalseにしておいてね ここがtrueだと投稿しないので 昨日trueにしたままアップロードしていたのに気づいたのでさっきfalseに戻しておいた csvを編集できるアプリって何のテキストエディタでもオッケー? >>10 特定のワードが含まれてる本文に反応してレスする機能を追加した >>16 CSVを開いて編集できるなら多分なんでも >>10 些細なものだがちょっとした不具合修正と機能変更 こういう荒らしを誘発させたやつも通報して行くとこまで行ったら処罰下るのかな ツイッターのリンクとかもあるし >>10 SyntaxError: invalid property id, line NaN (Error code: -991) というのが出てきてしまいます… >>25 どの画面のときにエラーが出た? 投稿前に出たらCSVファイルが置かれてるディレクトリのパスの指定を間違えている可能性が高い ディレクトリのパスの指定は「run.js」ファイルの最初の方にある"CSV_DIR"に記述 たとえばもし「C:\Users\Default」にCSVファイルを置いているなら 「C:\\Users\\Default」と記述ね >>26 間違えた もし「C:\Users\Default」にCSVファイルを置いているなら 「C:\\Users\\Default\\」と記述 これって指定したレス毎にクッキー自動削除する機能ある? >>29 無い iMacorsにクッキー削除機能があるので実装しようと思えばできるが しかし必要か? 連投規制がクッキー削除で回避できないならいらないかも。 >>31 連投規制はクッキーじゃなくてIPを見てるよ >>26 https://teilab.net/imacros-setting/ で配布されているfirefoxに内蔵されているimacrosをそのまま使っています パスは const CSV_DIR = 'C:\\Users\\USER\\Downloads\\FirefoxPortable\\FirefoxPortableESR\\Data\\profile\\Macros\\\Demo-Firefox\\rentou\\'; というように指定していました 解凍したときのrentouというフォルダ名のままそのフォルダにjsもcsvも入れてしまっていますが間違っているのでしょうか? >>33 それならパスの記述は合ってるっぽいな フォルダの名前も中身もそれでいい どの画面のときにエラーが出た?マクロ実行と同時に出た? 違うマクロを実行してるかも? ちゃんと「run.js」をダブルクリックしてる? 「run.js」の1行目に何かめちゃくちゃな文字を入力して保存してから「run.js」を実行して、エラーメッセージに変化があるかどうかも確認してほしい(その確認が終わったら元に戻してね) >>10 更新 マクロ開始時に5chをPCビューで見ているかモバイルビューで見ているかを尋ねるようにした 今どっちで見ているかの質問であり、選択した方を表示させるというわけではない PCブラウザから5chをモバイルビューで表示させ書き込むには、「itest.5ch.net」と目当てのスレのURL(ここなら「fate.5ch.net」)の"2つの"ユーザーエージェントをモバイルのものに書き換える ユーザーエージェント偽装については>>9 全てのPC用ブラウザが「余所でやってください」規制をされてる板でも、モバイルビュー+モバイル用ブラウザのユーザーエージェントだと、回避できる場合がある >>9 今の最新のPale MoonならiMacrosを使用可能 >>34 エラーが出るのは確かにrun.jsのダブルクリック時です めちゃくちゃな文字を入力した場合もエラーメッセージに変化はありませんでした ちなみにですが自宅のパソコン等常時つけていなくても、常時マクロを作動させるようなことができるおすすめのレンタルサーバーというかpaasみたいなものはありますか? >>36 そうなると原因はわからないなあ 最近iMacrosではなくGreasemonkeyで自動投稿できるスクリプトを作ってる これなら全ての環境で最新ブラウザでも動くはず でもいつ完成するかは未定です レンタルサーバーからマクロを動かすというのは全く詳しくないからわからないが…高度なスクリプトならSSHやcronが使えるサーバーならできて、ブラウザの拡張機能を利用したマクロを動かすならMacinCloudみたいなレンタル仮想OSになるのかな? >>38 そもそも古いfirefoxだと普通に書き込んでも「もう新しいのにしましょ」エラーが出ますね なのでマクロも使えないということなんでしょうかね pale moonも試してみましたがとにかくimacorsが使えるバージョンのブラウザはどうしても「もう新しいのにしましょ」のエラーが出て投稿自体できません 気が向いたらimacrosのプログラムのseleniumで使えるバージョンも作ってくださるとありがたいです UA偽装を忘れてたのでちゃんとやったらうまくいきました。すみません。 質問なのですが「自演かな?」という文句に対して「自演かな?」とオウム返ししたいとき filterTextに「自演かな」などと登録しておくことになると思うのですが この場合minAnkerの更新の仕方から考えると自分側のスクリプトで行った投稿に対して再度「自演かな?」と投稿する動作が延々とループすることになりませんか? そのあたりが疑わしいので今は「自演かい?」と投稿するようにしてるのですがどうなのでしょう? >>43 ループすることになっちゃうね コテハンをつけて名前フィルターにそのコテハンを設定すれば自分のレスにレスすることは避けられるけど >>44 id無しスレなんですよね そこらへんjane styleみたいな専ブラは自分の書き込みと全く同じ内容が同時に書き込まれたとしても自分の書き込みを判定できてるのは不思議です その判定アルゴリズムを組み込めば自分がした書き込みは除外するということが可能になりますからね ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.4.6 2024/03/23 Walang Kapalit ★ | Donguri System Team 5ちゃんねる