2017-12-28 51 views
-1

私はさまざまな方法でこれを理解しようとしています。私はスクリプト/ブックマークを作成しようとしていますか、特定のURLのブラウザタブまたはウィンドウを開くためのクイックアクションのいくつかのタイプは、自動的に私の資格情報を使用してログインします。私は現時点でこれに関するセキュリティについて心配している人だけではありません。スクリプトやブックマークを使用してウェブサイトに自動ログイン

は、最初に私は、私はこれを行うにはjavascriptのブックマークを使用しようと思います考え出し、私は私の研究で見つかったものは何も働きました。次に、私はbashスクリプトを作成しようとしましたが、ターミナル経由で資格情報を送信する方法を理解できませんでした。最近では、サイトのソースコードを文字通りコピーしてローカルファイルを作成し、フォームデータに資格情報をあらかじめ入力してJSを使用してフォームを提出できるような場所をハックしようとしましたが、何らかの理由でJSサブミット機能を使用すると、エラーが発生し、ユーザー名とパスワードが無効であると表示されます。しかし、私は送信機能をオフにし、手動でローカルHTMLページで "ログイン"をクリックすると、期待どおりに動作します。私はこれをワンクリックプロセスにしたいので、onload/submitやそのようなものへの何かのアイデアは私にとって本当に重要です。

私がテストしてるサイトは、Railsのバックエンドを持っており、私の次の試みは、私が考えているものを行うためにPOSTを使用しようとするかもしれないが、それはテーマに関する知識の私のレベルの外で、現在です。

誰かが回答しました:私はこれを達成するためにパスワードマネージャを使用したくありません。

私の要件は、私が)のことができるようにスクリプトを実行するか、b)は、ウェブサイトごとに、これを行うために1クリックオプションを使用するかということです。理想的には、複数のサイトでこれを行うためのプログラム的な方法でこれを設定できますが、現時点では1に満足しています。

私は同様の質問をする前に回答されているけど、私はこれを行うための良い方法を見つけ出すために、それらの記事(私はとにかく見てきたもの)からの情報を使用することができていません。

答えて

-1
  1. あなたが開いている現在のページのブックマークを作成します。
  2. 編集ブックマーク
  3. 変更するには、このような何かへのURLの値。 (ジャバスクリプト:(関数(){CODE_GOES_HERE_FROM_BELLOW})();
  4. ページにユーザ名とパスワードのフィールドを見つける

Hotmailの

var inputs = document.getElementsByTagName('input'); for(var i=0;i<inputs.length;i++){if(inputs[i].name === 'passwd'){inputs[i].value = 'YOUR_PASSWORD'}else if(inputs[i].name === 'loginfmt'){inputs[i].value = 'YOUR_USERNAME'}}; document.getElementById(document.getElementsByTagName('form')[0].id).submit();

ための例を考えます。

または

try casperjs。

+0

あなたの構文を使用してChromeに既知の問題はありますか?あなたのサンプルをテンプレートとして使用しようとしましたが、構文エラーが発生しています。 –

+0

別の良いアプローチは、casperjsを使用することです。 (http://casperjs.org/)これで、必要なサイトを読み込んで、資格情報を入力して提出することもできます。 – Fachher

+0

この作業を行うためにフレームワーク全体をインストールして使用することは、過剰な過労のようです。あなたのスニペットを使用したとき、私は構文エラーを受け取りました。私は自分のルートに行きました。残念ながら、残念ながら、すべてのサイトがその要素にIDを使用しているわけではありません。理論的にはforループを使用して似た要素を反復処理するのは良い考えですが、各要素を個別に識別する必要がある場合は機能しません。 –

-1

提案されたソリューションは私のためには機能しませんでした。この目的以外では決して使用しないテストフレームワークをインストールするのに時間を費やすのではなく、別の方法でこれをやろうと決めました。

まず、私は、サイトがJSが行われるように提出し許可しなかったので、私のJSは前に働いていなかった理由があることが判明、または私はこのエラーを得たとき、ように見えたものだという、少なくとも:"Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience"

私が使用していたjavascriptは実際には働いていましたが、投稿していませんでした。私が述べたように、問題は、私が提出するjQueryのを使用するように試みた

document.getElementsByClassName('username')[0].setAttribute('value', 'user'); 
document.getElementsByClassName('password')[0].setAttribute('value', 'password'); 

:私は(何の名前またはIDがなかったので、ページ上の「クラス名」の要素を使用して)フィールドを埋めるために、次のコードを使用しました形式:document.getElementsByClassName('loginForm')[0].submit(); 上記のエラーが発生したのはどちらですか?私は実際に原因の根源であるかどうかは確かに言えませんが、ページは送信されますが、無効なユーザー名/パスワードエラーが発生します。

私は素晴らしい方法を見つけませんでしたこの短期間では、私の短期的な "ハッキー"な解決策は、AppleScriptを使用してreturnキーストロークをブラウザに送信してフォームを送信することでした。私は理想的には、JQueryを使って提出物を動作させる方法を理解したいと思っていますが、それを回避する方法がわかりません。

関連する問題