問題タブ [browser-automation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 複数のスレッドでWebブラウザの制御を自動化する
System.Windows.Forms.WebBrowserを自動化し、複数のスレッドで実行できるかどうかを知りたいです。
5つの異なるアカウントを使用してmysite.comにログインしたいのですが、mysite.comのサーバーとの個別のセッションを維持しながら、5つのスレッドで5つのWebブラウザーと同時にログインすることは可能ですか。
セッションは互いに重なりませんか?
編集:複数のスレッドとは、5つの別々のスレッドに5つのコントロールインスタンスがあることを意味します。これにより、COMコンポーネントの問題が明確になることを願っています。
automation - Web自動化の実行時間ベンチマーク
Webページでさまざまなアクションを実行するために利用できる自動化実行時間関連の業界標準/ベンチマークはありますか?自動化のように; テキストボックスに値を設定するための許容時間と見なすことができる時間(20文字の場合は1秒など)、またはボタンのクリック、コンボボックスからの値の選択、グリッドで使用可能なチェックボックスの選択などに許容できる時間の範囲。
java - javaでボタンをクリックする方法は?
間に実際のブラウザを介さずに、Java プログラミング言語を介して HTMl ページのフォームにアクセスしたいと考えています。
現在、HTML UNITを使用して実行していますが、ページの読み込みに少し時間がかかります。何百万ものページにアクセスする場合、この余分なビット時間が最も重要になります。
これを行うための他の方法はありますか?
java - how to peform "Save As" on IE (Internet Explorer) automatically?
I want to open a webpage (whose URL is given as the commandline argument) and then want to save the content of that webpage as a .txt file.
Remember, I need the .txt file and not the source of the webpage.
I tried my hand with selenium and it works fine. But now I want something that doesn't open the real browser as opening the browser and loading a page in it is a time consuming task.
I want to do it in java.
By content, I mean the text (without markups) which we get when we save a webpage in IE by going to "Save As" and then selecting ".txt" as the output format of the file.
javascript - confirm() や alert() などの「グローバル」Javascript 関数をオーバーライド/再定義できますか?
ブラウザの自動化を行いたいのですが、厄介な確認/警告ボックスは本当に面倒です。残念ながら、この場合に JavaScript を完全に無効にすることはできません。
さて、私は疑問に思っていましたが、ブラウザの JavaScript インタープリターから見たこれらのメソッドの定義を、基本的に何もせずに true を返すように変更することはできますか? Javascriptコードでそれらを直接再定義することについて知っていることに注意してください。
しかし、ブラウザの自動化を行うときは、他の人のJavascriptを操作する必要があるため、これはこの状況では実行可能なアプローチではありません。さらに、ページがブラウザに完全にロードされた後、私のプログラムは実際にこれらの Web サイトの操作を開始するため、最初に JavaScript を自動的に書き換えてからページをロードすることはできません。それで、代わりに、アラート/確認が実装され、ブラウザで実行される方法を「永続的に」変更できるかどうか疑問に思っていました。Windowsアプリの領域でのdllインジェクションなどに相当するようなものです。
continuous-integration - webrat ブラウザー自動化テストを並列化できますか?
調整されたエージェントのファーム全体で Webrat (または他の同様のフレームワーク) ブラウザー自動化テストを並行して実行するために使用できる、SeleniumGrid に似た機能はありますか?
レーキを使用して TeamCity を介して調整しますか?
編集: 「 ASP.NET Web アプリケーションのテスト」で説明されているように、cucumber+webrat を使用して機能テストと受け入れテストを行うことを検討しています。
c++ - IEでwin32COMを使用するのと同じように、XPCOMを使用してFirefoxウィンドウを作成および操作できますか?
win32 COMを使用して、Internet Explorerインスタンスを作成し、Pythonコードからほぼ完全に制御します(ウィンドウ、DOM要素などを操作します)。具体的には、DispatchEx('InternetExplorer.Application')を使用します。XPCOMとC++/ pythonを使用して同じことを行うことはできますか?
一部のWebサイトのhtmluiで実行される特定のアクションを自動化する必要があるため、クロスドメインURLで機能しないため、urllibを使用できず、seleniumを使用できません。Internet Exploreのラッパークラスを作成しました。このクラスでは、ブラウザーウィンドウを作成してそれを使用して何でも実行できますが、Firefoxでも同じことを実行したいと思います。XUL/jsで記述されたtcpサーバーを介してDOM機能を公開するXULアプリケーションを作成することを考えました。それが可能かどうかさえわかりませんが、xulrunnerを外部で実行せずに、Pythonコードからすべてを実行できれば、はるかに優れています。
firefox - ページが完全にロードされるまで Web ページを更新するスクリプト/プラグイン (次の 25 コメントをロード)
簡単な要約: Web ページの下部にある「次の 25 コメントを読み込む」リンクを、そのリンクがページに表示されなくなるまで選択する、Firefox 用のスクリプト/プラグインが必要です。そのリンクをクリックすると、より多くのコメントが表示され、最終的にすべてのコメントが同じページに表示されます。例については、この Web ページを参照してください (1,852 のコメントがあります): http://www.cnn.com/2010/US/05/16/gulf.oil.spill/index.html#comment-50598247
CNN.com で定期的に問題が発生します。そこにコメントを投稿します。人々は時々彼らに返信します。プロフィールを確認すると、返信の数が表示されますが、そこでは読むことができません。元の記事へのリンクをたどる必要があります。コメントの最初のセットが下部にあり、下部に「次の 25 を読み込む」リンクがあります。多くの場合、数百のコメントがあり、時には数千のコメントがあります。私のコメントへの返信を読む実際的な方法はありません。約 300 百未満の場合は、そのリンクを十分な回数クリックして、コメントへの返信が何であるかを確認します。そのリンクがページに存在しなくなるまで、その「次の 25 を読み込む」リンクを選択するためのスクリプト/プラグインが必要です。次に、自分のユーザー ID を検索して、応答を読み取ることができました。
c# - WebBrowser を含むアプリは、ブラウザの動作を偽装してダウンロード ファイルを自動的に制御できますか?
Internet Explorer に基づく自動化された WebBrowser コントロールを使用してログインする、認証が必要な Web サイト内にある URL からファイルを自動的にダウンロードするとします。しかし、そこにいてファイルへのリンクを取得したら、そこに移動してIE6経由で直接ダウンロードしようとすると、「このファイルを開くか保存しますか」というモーダルダイアログが表示されます。そして、C# WebClient クラスを使用してダウンロードしようとしてもうまくいきませんでした。ダウンロードされたのは、意味のない短い JavaScript だけでした。実際、好奇心から、添付ファイルをダウンロードしようとして Gmail Web サイト内の WebClient メソッドをテストしましたが、どちらも機能しませんでした (Gmail から POP3 インターフェースを介してそれらを取得できることはわかっていますが、これは単なる実験でした)。
さて、これはすべての根底にあるメカニズムについて疑問に思います. まず、WebClient を間違った方法で使用している可能性がありますか? または、そのような状況でファイルをダウンロードするための他の標準 C# クラスがあるのでしょうか?
そうでない場合、アプリがブラウザの動作を偽装して、実際には同じプロセスの別の部分からのものであっても、ファイルの要求がブラウザからのものであるとサーバーが考えるようにすることは可能ですか? WebClient ができない間にファイルをダウンロードできるようにする、この状況でブラウザは正確に何をしているのでしょうか?
flash - ブラウザ自動化のように、ブラウザで実行されている SWF アプリを自動的に制御/スパイダーできますか?
「人間専用」の情報を表示する Web サイトの所有者が、データを取得するボットやスパイダーにうんざりしていて、ブラウザーで実行されている SWF アプリにこの情報を表示することにしたとします。そのため、彼は Web サイトの構造を Flash アプリとして再実装したため、悪者は URL を追跡し、HTML を解析するスクリプトを使用して Web サイトをナビゲートできなくなりました。
悪者はここで何ができますか? ブラウザで実行される Flash アプリを作成し、ブラウザで実行されている別の Flash アプリを何らかの方法で制御して、そのユーザー インターフェイスをナビゲートし、ユーザーに表示されているテキストを取得できますか?