はてなキーワード: Httpsとは
普通為替取引と言えば二つの通貨間で金を転がして相場の変動に伴う差額を儲けとして得ることを目的としたものを言うと思う。
相場が変化する中でこそ可能な方法という意味で動的な為替取引と言えると思う。
上記のような方法しか為替取引で儲ける方法など存在しないと思われる人たちににとって今ある唯一の方法論を「動的」とまるで別の何かと区別したような呼び方は単なる無駄に映るかもしれない。
しかし既存の方法論とは志向するところが異なる「静的な為替取引」と呼べそうな方法論を見つけたかもしれないということをこれから説明していこうと思う。
しかし「相場が固定されていたとしても」儲けることができるというのが今回説明したい方法なのだ。
むしろ相場が固定されていてくれていたほうがありがたいようなやり方なのである。
実際一個人が市場介入で相場を固定することはできないが、相場が大きく動いていく前に一連の取引を済ませてしまうということならできる。
そういう視点で考えれば今自分が行いたい全ての取引を一瞬で終えることが可能ならば大ざっぱに言えばその取引は固定相場制のなかでの取引と同等なものになる(大ざっぱに言えばと断ったのは、自分自身の取引による相場の変動が考慮されるため)。
一瞬のうちに全ての取引を済ませたときに得られる儲けが、数学における極限的な意味での、儲け得る金額の理想的な値に相当する。
この理想値に近い儲けを手にするためにできるだけ俊敏な取引が望まれるというわけだ。
つまり説明していく方法を実行するにあたっては手動ではなくプログラムを組んで行うことが望まれるということには留意してほしい。
またあえてこの時点で両者の為替取引を端的に表現しておくなら、動的な為替取引とは時間経過に伴う相場の変動を利用して儲けを得ること、静的な為替取引とは一時点における相場の「ひずみ」を利用して儲けを得ること、というところになると思う。
ㅤ
具体的に説明するために仮想的な通貨とそのレートを仮定しておこう。
そのレートについての条件は以下の通り。(円に対して100円というように100Aや50Bと表記していく)
1.1C=100A(1.でこれから指し示すための通し番号となっており小数点ではない。以降同様の表記法を用いる)
2.1C=1B
AとBについては以下の2通りのレートを適宜考える(都度どのレートで考えているか示す)
3.1B=1A
同様に以下の通り
5.100D=1C
6.90D=100A
以降、文章だけで伝わるように努めたが、一応解説図のようなものも作成したので適宜imgurへ投稿した画像へのリンクを貼る(増田では1つの記事に貼れるリンク数には限りがあるためhttps://は省略させていただく)。
核心の部分を説明するまでの準備的な説明が多いので回りくどく思われるかもしれないが、読み飛ばしたりしてはおそらく理解できないはずなので辛抱強くついていってほしい(もちろん直截簡明に説明できない私の文章力不足もある)。
では具体的な説明をしていこう。
まずA,B,Cの三つだけで考える。
甲が100A、乙が100B、丙が100C持っていたとしよう。
まず甲と乙の間での取引が起こる。
レート3(1B=1A)の関係により、100Aと100Bがそのまま交換されることになる。
これにより甲は100B、乙は100A、丙が100C持っていることになる。
次に甲と丙で取引が行われる。
レート2により、今度は100Bと100Cの持主がそっくりそのまま入れ替わるわけだ。
これにより甲は100C、乙は100A、丙が100B持っていることになる。
甲は100C持っているわけだが、これはレート1により10000Aに相当する。
通貨Aに戻してから同様のことをサイクルとして繰り返すことで100倍ずつ資産の増やせるというわけである(厳密には甲と乙が行う取引自体によって取引中にレート3がAの価値が下がる方向に変化していく効果も考慮されることになるので、1サイクルにおいて変換させようとする通貨AとBの量の多いほどぴったり100倍にはならずそれを下回る成果となる)。
反面、乙がこの1サイクルで最終的に得たお金を通貨Cに換算すると、レート1により、1Cになっていることになる。
最初持っていた100Bはレート2により100Cに相当するのだったから、資産が100分の1に目減りしていることになるのだ。
これらのことはレート1とレート2が相場として確かにあることから起こることだ。
レート1とレート2の関係を知っていて、誰がレート3のような100分の1目減りする取引を行うだろうか。
つまりこの情報社会ではレート1とレート2が既にあるときレート3のような相場は発生しない。
ここで早速簡易な表を添付しておく。これを見ながらの方が俯瞰的に状況を見ることができ分かりやすいかもしれない。
結論としてはレート1とレート2であるときはレート4の相場で相場全体がこなれることになる。
これらの等式はまとめて1C=100A=1Bとすることができることから明らかなように、これら3つの相場が成り立っているときにはこの3つの通貨の間でいかにお金を転がそうとも損も得もしない。
つまりAのような一人勝ちできる勝者は発生し得ない。世の中そう上手い話はないというわけだ。
一応レート1,2,4のときの表も添付しておく。
ここまで分かりにくく感じるところがあったという人は、通貨A,B,Cをそれぞれ円、ビットコイン、ドル、に具体的な通貨に置き換えてみるといいかもしれない。
このときレートも具体化すれば1ドル=100円、1ドル=1ビット、1ビット=1円または1ビット=100円となる。
今まで円をビットコインを経由してドルにしてから円に戻すだけで資本が増やせるなんて話を聞いたことがあるだろうか?仮にそんな話があったとしてそれは確固たる成功例だったろうか?
そういうわけで、1ドル=100円、1ドル=1ビットのようになっているときは1ビット=1円のような誰かに都合のいい相場ではなく、1ビット=100円のようになっているはずだということである。
具体化した表も付しておく(レート4の場合)。
これは当然レート1とレート2のような相場に限ってしか言えないものではなく、ドルと円あるいはドルとビットのレートがどのようになっていても残りのビットと円のレートについて必ずそうなるということである。
ただしAとBの関係についてはレート4が成り立っているものとする。
表を見ればより一目瞭然かと思うが、上に書いたサイクルで甲が通貨Cを通貨Aに戻す直前には甲は持っている。
ここで甲と丁による通貨Aと通貨Dの取引を考える。丁は90D持っているものとする。
このとき甲と丁の取引が行われるとレート5により甲に100D、丁に1Aが渡ることになる。
今甲が持っている100Dを通貨Aに換算するには、レート6により、90:100=100:xという比例式を解く計算をすればよい。
x=10000/90ということで、もともと持っていた100Aより資産が増大しているのだ。
レート7があまりにも恣意的な設定なだけではないかと思われるかもしれない。
しかし肝心なのは、レート6であってはならないという必然性がないということだ。
丁が通貨Aなど念頭になく、通貨B,C,D間での取引にしか興味がない(そして多くの人もその傾向である)ならば、少なくともその三者間の相場を表すレート2,5,7は先ほどと同様一つの式にまとめられる関係にあるので、丁はこの取引において損も得もしていない。
丁(あるいはその他多数)にとっては安心して支払いなどと用として通貨を替えることができる環境にあるわけだ。
自分がした取引によってその取引相手である甲という一個人が得しているかどうかなどあずかり知らぬことである、ということだ。
同様に乙や丙にとっても通貨Dなど念頭になく、またそのような人々が多数派なのであれば、レート4を含む今のレート状態で乙や丙のようなA,B,Cの三通貨間の取引を期する人々にとって損も得もないことは表も交えて先述した通りだ。
レート6がどのようであっても先ほどの甲が100倍得したときに乙の資産が100分の1に目減りするような状況にはならないので、乙やその他通貨Bを持っている人たちの投資家心理はレート6には干渉しない・独立しているということなのだ。
概念図では念頭の埒外、蚊帳の外という様子を破線で示している(図中の数字はレートの通し番号に対応)。
私はレート6のような状態を相場のひずみとでも呼ぶことにしたい。
相場が固定するなかでは二通貨間の取引は言うまでもなく、一つのサイクルの間にどれだけ多くの通貨を噛ませても損も得も起こらないと考えるのが普通だろう。
いわば電気回路で一周すると電圧が元に戻るというキルヒホッフの法則のようなものが為替においても(手数料を抜きにすれば)成り立つはずだというのが素朴な考えとして多くの人に支持されるはずだ。
次々と自国の貨幣よりもより価値の高い通貨に替えていっても最終的に自国の通貨に戻したときには最初と全く同じ価値に戻ってしまうということである。
しかし大半の投資家心理とは独立した通貨ペアがあれば、そのレートも投資家心理の束縛を受けず、場合によっては誰かが得できる状況もあり得るのではないかという説を上では具体的に例示したわけだ。
ここでそのような通貨ペア=ひずみを生じる根源が成立条件について自信は無いが挙げておこうと思う。
さらに
条件として挙げたのはどれもAとDの為替を含む取引になっている。
逆に条件に挙げた取引がある程度存在するとAとDの相場であるレート6にも投資家心理が影響していくので誰も損得しない方向にレート6のひずみも解消されていくのではないかということだ。
たとえば1番目と2番目の条件はようするに金の流れが逆なだけなので、いずれか一つを挙げれば事足りる同値な重複した条件なのではないかということだ。
4通貨でひずみが生じる例を示したわけだがこの場合のひずみも解消され得るものである。
しかしそれ以上のある数以上の通貨間の関係のなかではそれらに内包されるそれぞれの二者間の相場がいかなるものであろうとも、どこかしらにひずみが生じてしまうものなのかもしれないと直感的に感じられる。
つまりある数以上の通貨を介せば必ず儲けを生み出す為替の経路が存在しているのではないかという主張であるわけだが、その通貨数がいくつであるのか、私にはそれを数学的に証明する技量はないのは悔やまれる。
話を戻せばこうしたひずみがあると、一見成り立ちそうな為替版のキルヒホッフの法則でも相殺しきれない差額が生まれ、それを儲けとして得ることができるかもしれないということだ。
これらの概念図を示しておく。
今までの話はこのようなごく単純な話に置き換えられるかもしれない(ただし以下は知人が見出したたとえ話なので語弊もある恐れがあり正しさは保証しない)。
今プレステ3の卸値が日本で3万円、アメリカで280ドルだとする。このとき100円=1ドルの相場である。
手持ちが29000円しかないなら日本でプレステを買うことは不可能だが、この相場ならドルでなら買える。
それどころかこのプレステ3を日本で売れば売ればお釣りが来るかもしれない。
ただし日本で売るにはアメリカで買ったそのプレステ3を日本まで運搬してもらう配送料がかかる。
この配送料次第では損かもしれないが、ここが先ほどまで説明してきた方法論の手数料負けするというおそれに相当するわけだ。
効率よく上記の条件を押さえた通貨ペアを探すなら、通貨ペアの相関係数表をチェックする方法が検討される。相関表の例:https://prtimes.jp/main/html/rd/p/000000299.000003206.html
まず日本円の列か行の中で相関係数の絶対値が0に近いものを探す。
0に近いものを見つけたら、今度は前の時点で列の中で眺めていたなら行を、行を眺めていたなら列を探して、同様にその通貨にとって相関がほとんどない通貨を見つけ出す。
こうして行から列、列から行と渡っていくことを繰り返し、最終的に日本円に戻ってくるループを見出す。
ただしこのループの中に同じ種類の通貨が二度以上あってはいけない。
もし同じ通貨があればそこで一つの完結したループができてしまっていると思われる(もちろん始点と終点として円だけは必ず二度登場しているはずである)。
そのようなループが今回の方法論を適用するのに優先的に試すべき候補であるが、実際にそのうちに手数料込みで儲けを生み出すひずみが生じているのかどれかといった計算や、このようなループを探し出す作業自体もプログラムで行なったほうが良いと思われる。
計算から取引の完了までの間に人力でもたもたしていると、その間にひずみの状況が変わり、行なっていた計算が適用できなくなるはずだからだ。
そもそも通貨の組み合わせも膨大であり、為替で利用できる通貨が10個だったとしても、順列の概念はうろ覚えで自信がないのだが、ひずみが発生し得る通貨数が4つ以上だと仮定してもその組み合わせ10P4+10P5+・・・+10P10のようになり、その中から候補のループを探すというのは人間が人力で行うべきことではないように思われる。
ともすれば量子コンピュータの実用化を待った方がいいぐらいかもしれない(なんとなくNP問題の匂いがする)。
ただしそれだけの組み合わせ数があるというのは良いことでもある。
プレステ3のような規格化された工業品はさておき具体的な物においてはひずみが生じやすい、しかし原油や貨幣は統一されたものなのでそのようなひずみは起こらないだろうというようなことを知人は言っていた。
しかしこれだけの数の組合せがあるなら、やはりそのなかにはまだ見出されていない、得できるような通貨ペア、ループが眠っていてもおかしくないと思うのだ。
頭の中で考えても俺の脳内スタックでは何か行ったり来たりするような状態を繰り返すばかりになっていたので埒が明かないと感じたし、また自分の中でも判然としないところが多いので、批判を乞う目的も兼ねて今回言語化を試みた。
そういう経緯ゆえに直観に頼ってごまかして書いたところもある。
ただし増田で間違ってると言われてもそれを鵜呑みにするようなことはしないつもりだ。
それを参考にはしながらも、今後金融や経済学の専門的なことを学び、もっと理詰めで考えられるような頭になった後で、この方法論が理屈として間違っているかどうか、また机上の空論ではなく有用あるいは実効性があるといえるかどうか確かな理解のもとで判定させていきたい。
それは、
のどれかにゃーん。
M1 pro Macにて。ここ参照:https://github.com/magnusviri/stable-diffusion/tree/apple-silicon-mps-support
git clone https://github.com/magnusviri/stable-diffusion.git
cd stable-diffusion
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
conda activate ldm
mkdir -p models/ldm/stable-diffusion-v1/
https://huggingface.co/CompVis/stable-diffusion-v-1-4-original から`sd-v1-4.ckpt`をダウンロードして、
ln ~/Downloads/sd-v1-4.ckpt models/ldm/stable-diffusion-v1/model.ckpt
以下のパッケージを追加した。https://twitter.com/hevohevo/status/1562364961481162754?s=20&t=KxNXNB9fz99fbosZ8TfnvQ を参考に。
conda install onnx
pip install invisible-watermark
それで実行
python scripts/txt2img.py --prompt "a photograph of an astronaut riding a horse" --plms
するとエラーになる。https://qiita.com/hevo2/items/e646148a05118074fecf に従い、下記ファイルの2511行目を書き換え。
vi /opt/homebrew/Caskroom//miniforge/base/envs/ldm/lib/python3.10/site-packages/torch/nn/functional.py
https://www.slowopodlasia.pl/galeria/175,kobiety-w-czasach-prl-u
https://www.dziennikwschodni.pl/galeria.html?gal=999678015&f=3
https://krasnikfabryczny.wordpress.com/2019/12/09/tluste-lata-siatkowki-zenskiej/
なぜなんだろう。
ttps://krasnikfabryczny.home.blog/2021/11/30/halina-wojtanowska-wielka-osobowosc-siatkowki/
自動で安価をつけて返信するプログラムでもこんなに長く複雑になる(一部抜粋)
/**************************************
以下のCSV_DIR, FILE_PATHS, SETTINGSを書き換えてね。 <h3>o- *************************************/</h3>
//CSVファイルが置かれてるディレクトリのパス。投稿前にエラー出たら大体ここの設定ミス。 例:"C:\\Users\\sakuraimasahiro\\Documents\\iMacros\\Macros\\rentou\\";
'C:\\Users\\USER\\Desktop\\iMacros\\Macros\\rentou\\';
//ファイルのパス。CSVは絶対パスで、拡張子も必要。iimは相対パスでよく、拡張子不要。
const FILE_PATHS = {
textCsv: CSV_DIR + 'textNoAnker.csv',
//レス用投稿文が書かれたCSV。通常とレス用で分けないなら同じファイルを使えばいい。
replyTextCsv: CSV_DIR + 'textReply.csv',
};
baseWaitTime: 5,
//baseWaitTime+0~waitTimeRange(ランダム)だけ待つ
waitTimeRange: 5,
//連投しすぎだと忠告された場合に処理を一時停止させる時間(秒)
waitTimeForAvoidingPunishment: 60 * 30,
//メール
mail: 'sage',
//名前設定
name: '',
//以下、偽装ワッチョイ設定。浪人でワッチョイを非表示にしてるときだけtrueにしてね。
//妙なニックネーム(ワッチョイ、アウアウウーなど)をランダムで決めて付加するかどうか。true=付加する。false=付加しない。
//妙なニックネームの後に付く8桁の文字列をランダムで決めて付加するかどうか。
},
//アンカー無し投稿をするならtrue。しないならfalse。noAnkerPostかreplyPostのどちらかはtrueにすること(両方trueでもOK)。
//アンカー付き投稿(返信)をするならtrue。しないならfalse。もしnoAnkerPostとreplyPostの両方がtrueの場合、投稿は返信が優先され、返信対象が見つからなくなったらアンカー無し投稿をする。
//最初に取得するアンカー無し投稿文CSVファイルの行番号。もし返信用と同じCSVファイルを使うなら-1と入力。
noAnkerPostTextCsvStartRow: 1,
//最初に取得する返信用投稿文CSVファイルの行番号。もしアンカー無しと同じCSVファイルを使うなら-1と入力。
//テキストCSV/返信用テキストCSVの取得行が最終行に達したら最初の行まで戻るかどうか。true=戻る。false=マクロ終了。
//返信する場合、これより小さなレス番には返信しない。返信を投稿すると、この数値は前回の返信先のレス番に更新される。
minAnker: 895,
//返信する場合、名前に以下の文字列を含む投稿にアンカーをつけて返信する(ワッチョイやIPなど名前フィールドにあるものならなんでも可)。配列で複数指定可能。指定無しなら空配列([])。filterNamesとfilterNamesNotIncluded共に無指定ならレス番1から順に返信していく(minAnkerが設定されてればそこから順に)。以下のfilter系は全て併用可能。
//↑とは逆に、名前に以下の文字列を含まない投稿にアンカーをつけて返信する。↑と併用も可能。
//返信する場合、本文に以下の文字列を含む投稿にアンカーをつけて返信する。
filterText: ['自演かな', '自演わらわら', 'スクリプト使うの', '安価ガバ', '>>660', '自演で擁護', '最後' ,'あいうえお', 'かきくけこ', 'さしすせそ', 'なにぬねの', 'はひふへほ', 'まみむめも', 'やいゆえよ', 'やゆよ', 'らりるれろ', 'わいうえを', 'わをん', 'わいうえをん'],
},
//自分のIPアドレスの確認。VPNとかでIPを変更してマクロを動かしてるとき、突然VPNが作動しなくなってIPが元に戻ったときにマクロを止めるためのもの。
//以下の文字列が自分の現在のIPアドレスに含まれている場合、マクロを一時停止する。基本的に自分の本当のIPアドレスを入力。
},
//浪人設定。最後に動作を確認したのは5年くらい前で、今も同じように動作するかは、浪人を持ってないから確認できずわからない。
//浪人にログインしてるかどうかをチェックするかどうか。trueならする。falseならしない。trueにしていてもし浪人にログインしていないことを確認したらログインしにいく。
password: '1234',
},
};
/**************************************
設定箇所終わり。
https://info.5ch.net/index.php/%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%81%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE%E6%97%A9%E8%A6%8B%E8%A1%A8 <h3>o- *************************************/</h3>
/**************************************
・NULL演算子(??)は使えない。論理積(&&)は使える。
・オブジェクトの分割代入はできない。
・importはできない。 <h3>o- *************************************/</h3>
/**************************************
関数 <h3>o- *************************************/</h3>
/**
* ここから始まる。
*/
checkSettings();
var _TextCsvCursors = new TextCsvCursors(
SETTINGS.postSettings.noAnkerPostTextCsvStartRow > 0
? SETTINGS.postSettings.noAnkerPostTextCsvStartRow - 1
: SETTINGS.postSettings.noAnkerPostTextCsvStartRow,
SETTINGS.postSettings.textCsvLoop,
),
SETTINGS.postSettings.replyPostTextCsvStartRow > 0
? SETTINGS.postSettings.replyPostTextCsvStartRow - 1
: SETTINGS.postSettings.replyPostTextCsvStartRow,
SETTINGS.postSettings.textCsvLoop,
),
);
var _LoopStatuses = new LoopStatuses(0, SETTINGS.postSettings.minAnker);
const _MyPosterName = new MyPosterName({
name: SETTINGS.nameSettings.name,
});
const _ThreadUrl = openPromptThreadUrl();
//ループ
while (true) {
SETTINGS.ipSettings.checkIp && checkCurrentIpNotTheIp();
//スレを開く
openUrl(_ThreadUrl.fullUrlHttps());
//浪人にログインする設定なら、浪人にログインしているかどうかを確認し、していなければログインしにいく。
if (SETTINGS.roninSettings.checkLogin) {
}
}
if (SETTINGS.postSettings.replyPost) {
const targetAnkerNumber = createPostDOMList()
.filterPostnumberHigher(_LoopStatuses.currentMinAnker())
.filterByPostername(SETTINGS.postSettings.filterNames)
.filterByPosternameNotIncluded(
SETTINGS.postSettings.filterNamesNotIncluded,
)
.filterByText(SETTINGS.postSettings.filterText)
if (targetAnkerNumber !== null) {
const r = _TextCsvCursors.takeNextRowTextAsReply(targetAnkerNumber);
messageDisplay(`返信対象有り。アンカー先: ${targetAnkerNumber}`);
return {
...r,
updatedLoopStatuses:
_LoopStatuses.updateMinAnker(targetAnkerNumber),
};
}
}
if (SETTINGS.postSettings.noAnkerPost) {
//返信対象無し、或いは返信しない設定の場合。アンカー無し投稿文を作る。
const r = _TextCsvCursors.takeNextRowTextAsNoAnker();
messageDisplay('返信対象無し。アンカー無し投稿。');
return {
...r,
updatedLoopStatuses: _LoopStatuses,
};
}
return null;
})();
if (p) {
//投稿。
nickname: SETTINGS.nameSettings.nickname,
korokoro: SETTINGS.nameSettings.korokoro,
area: SETTINGS.nameSettings.area,
}),
SETTINGS.mail,
p.text,
);
//_TextCsvCursorsと_LoopStatusesを更新。
_TextCsvCursors = p.updatedTextCsvCursors;
_LoopStatuses = p.updatedLoopStatuses.incrementPostCount();
`投稿回数: ${_LoopStatuses.currentPostCount()}`,
`minAnker: ${_LoopStatuses.currentMinAnker()}`,
`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,
`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,
]);
} else {
`返信対象が現われるのを待機中...。`,
`投稿回数: ${_LoopStatuses.currentPostCount()}`,
`minAnker: ${_LoopStatuses.currentMinAnker()}`,
`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,
`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,
]);
}
wait(SETTINGS.baseWaitTime + randomRange(0, SETTINGS.waitTimeRange));
}
}
/**
* 投稿処理と投稿結果を見てリトライしたりマクロ終了したり。
* @param {string} serverName サーバー名
* @param {MyPosterName} _MyPosterName
* @param {string} postMail メール
*/
serverName,
postMail,
_MyText,
retryTimes = 0,
) {
const r =
retryTimes === 0
? new ValuesOfPost(serverName, _MyPosterName, postMail, _MyText).post(
postTo5chTread,
)
serverName,
postMail,
_MyText,
).postSubstring(retryTimes, postTo5chTread, postConfirm);
if (r) {
back();
return;
}
wait(7);
const error = createPostErrorMessage().analyze();
messageDisplay(error.message);
if (error.order === 'KILL') {
kill();
} else if (error.order === 'SKIP') {
return;
} else if (error.order === 'TRUNCATE') {
back();
serverName,
postMail,
_MyText,
retryTimes + 1,
);
} else if (error.order === 'WAIT') {
wait(SETTINGS.waitTimeForAvoidingPunishment);
serverName,
postMail,
_MyText,
retryTimes,
);
} else if (error.order === 'LOGIN') {
serverName,
postMail,
_MyText,
retryTimes,
);
}
return;
}
/**
* 現在のIPアドレスに、SETTINGS.ipSettings.avoidTheIpの値が含まれていないことを確認する。含まれていたらマクロを一時停止。
* @returns
*/
function checkCurrentIpNotTheIp() {
openUrl('https://www.cman.jp/network/support/go_access.cgi');
const _IpAdress = createIpAdressFromCMan();
if (_IpAdress.includes(SETTINGS.ipSettings.avoidTheIp)) {
pause('現在のIPに指定した値が含まれていることを確認。');
}
return;
}
/**
* @returns
*/
if (
SETTINGS.postSettings.noAnkerPost === false &&
SETTINGS.postSettings.replyPost === false
) {
return kill('設定エラー。noAnkerPostとreplyPost両方ともfalseになってる。');
}
if (
SETTINGS.postSettings.noAnkerPostTextCsvStartRow < 0 &&
SETTINGS.postSettings.replyPostTextCsvStartRow < 0
) {
return kill(
'設定エラー。noAnkerPostTextCsvStartRowとreplyPostTextCsvStartRow両方とも-1になってる。',
);
}
if (
SETTINGS.postSettings.noAnkerPostTextCsvStartRow === 0 ||
SETTINGS.postSettings.replyPostTextCsvStartRow === 0
) {
return kill(
'設定エラー。noAnkerPostTextCsvStartRow/replyPostTextCsvStartRowの初期値は-1或いは1以上で。',
);
}
}
/**
* 入力フォームを表示して入力されたスレのURLを受け取る。
*/
function openPromptThreadUrl() {
const url = prompt('スレURLを入力');
}
/**
* 開いてるスレのレス全て読み取ってPostListインスタンスを作って返す。
* 重すぎるので使うのやめ。どうやらインスタンスの大量生成が原因な模様。
*/
const posts = window.document.getElementsByClassName('post');
return new PostList(Array.from(posts).map((e) => new Post(e)));
}
/**
* 開いてるスレのレス全て取得してPostDOMListに格納して返す。
* @returns
*/
function createPostDOMList() {
const posts = window.document.getElementsByClassName('post');
for (let index = 0; index < posts.length; index++) {
//HTMLCollectionからElementを1つずつ抽出して配列に。
arrPostDOMList.push(posts.item(index));
}
return new PostDOMList(arrPostDOMList);
}
/**
* 開いてる投稿結果画面に表示されてるエラーを読み取ってPostErrorMessageインスタンスを作って返す。
*/
function createPostErrorMessage() {
window.document
念のため補足しますが、誰か/何かを非難や攻撃する意図はなく、僅か数日で全く異なる傾向を見せたブックマークに「えぇ~」という感情の吐露です。
それでも、あえて非難先を指定するなら、傾向が一定しないスターを付けた人※ と現状のトップページと人気ランキングの仕組みのままにしている運営です。
※ 両方にブクマした人は分かるのですが、両方にスターした人の比較は困難なので、スターの傾向が一定しない人がどこまで居るかは不明です
上 山田太郎
下 鳩山友紀夫
なんのいみもない駄文
あてつけのようにひろゆきのエントリを貼り付けてるアホより、よっぽど誠実。ひろゆきなんて統一教会みたいな連中のノイズを、増幅しまくってきた存在。
このひと党派性以外に存在意義ないね。スタンダードが存在しないの可哀想…
踏み絵踏んだつもりが足浮いてるで。「今後関係を持つつもりない」は嘘で統一協会とズブズブの自民を離党しない限り不可能。統一教会は表現規制派なのに統一教会と徹底的に戦いますと言えないあたり山田は真っ黒やで
この際知ってる情報あるなら過去含め洗いざらい出してほしい。デマが飛び交うのは正しい情報が少ない上に与党が批判の矛先をそらそうとするから。いつものように野党に責任転嫁し煙に巻いて逃げ切ろうとしてる
これを3年間「自主規制」していたわけだね。すでに『山田太郎が問題視してないなら、統一教会は悪い組織ではない』とシンパシー抱く支持者が出ている状況で、もっと強く「オタクは統一教会から立ち去れ」と言える筈
『一方で、統一教会のイベントへの出席や祝電の事実はある。政治家として、一部の国民を苦しめるような宗教団体は規制すべきだったがその責任を果たさず、無思慮にかかわったことを大変反省している』
なんか微妙だな。知らなかったとしても関係は持ったわけで、その上で反省なんじゃないの?最初に問題になったのも、もっと前だし。
第一にやるべきことにグチグチいうんだ
知らなかったからデマだみたいな論法で通じると思ってるのか? まあ今後は一切の関わりをせず、むしろきっちり統一教会に規制なり宗教法人格剥奪なりに尽力してくれたらええが。関与否定の表明だけで終わるなよ?
ずいぶん態度違いますね
haha64
「問題の多い団体であり政治家が関わるべき団体ではない」と明言したのは好印象だが、同じ自民党議員の統一教会賛同会員・井上義行あたりに言うことはないんですかね。問題の多い団体に深く関わってるけど。
https://六マリアの悲劇.com/%E9%9F%93%E5%9B%BD%E3%81%AB%E6%B8%A1%E3%81%A3%E3%81%9F%E7%B5%B1%E4%B8%80%E6%95%99%E4%BC%9A%E6%97%A5%E6%9C%AC%E4%BA%BA%E5%A5%B3%E6%80%A7%E4%BF%A1%E8%80%85%E3%81%AE%E5%AE%9F%E6%85%8B/
日本人はみな、朝鮮半島を植民地支配したことを遺伝罪や連帯罪として背負っているとされ、韓国に嫁いだ日本人女性信者は夫や夫の家族に尽くすことでその罪を清算しようとする。統一教会が日本だけで霊感商法を行うのも贖罪させるためである。
dockerでubuntu:20.04でchromeDriverにchromium-browserとか入れればいいんだろ?
誰か「chromium-browser? それなら apt-get install lsb-release libappindicator3-1 の次に
wget https://dl.goo略/_amd64.deb して dpkg でインスコや」
ってか、これじゃchromeDriverが動かない。chromium-browser も無いし、インスコ出来てなくない?
別の誰か「ちゃうちゃう、apt-get install chromium-browser がシンプルでええやん」
まあ、そうやろな。インスコしとくれ。
ターミナル「色々DLしとるが、どっかの https://archve.略/foobar で Bad Request が返ってきたでw」
何やそれ・・1回くらい自動でリトライしてくれていいんやない?自分でリトライしたら通ったで。
しかしこれも動かない。
別の誰か「apt-get install default-jre いるみたいやで。ドキュメントどこにも書かれてないけど」
何やそれ?なんでJREが出てくるの。
まあJRE入れれば、確かにchromedriverの出すエラーは変わった。
「chromium-browserのプロセスが居なくなったし、クラッシュしたんじゃね?」と。
何やそれ。。。
chromium-browser --version をやってみると
ターミナル「snap install chromium でsnap版入れてくれw」
まあよく知らんが、やったるか。snap install chromium っと
ターミナル「あかん、http://localhost/v2/snaps/chromium に繋げられんのやがw」
なんでlocalhostに繋げようとしてんの。
いまだにLinuxくんと仲良くできない。
追記。
なるほど、Ubuntu 20.04 からはsnappyに移行しとるんだと。しかしWSL2ではsystemdが動いてないんでsnapdも動いてない。だからアカン。
わいが仲良くできていないのは、LinuxくんではなくWSL2くんと言うべきなのか?