問題タブ [mechanize]
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.
python - 複数の送信ボタンがあるフォームを送信する方法。Web サイトに POST を送信します。(パイソン)
Web サイトにログインしてフォームを送信できるPython Mechanizeを使用してスクリプトを作成しています。ただし、このフォームには 3 つの送信ボタン (プレビュー、投稿、キャンセル) があります。ワンボタンに慣れてしまった…
これは次の形式です。
そして、これは私のコードです:
このスクリプトを実行すると...動作しません。何も起こりません。フォームに3つの送信ボタンがあるので、私は推測していますか? それとも別の問題ですか?
python - Python 機械化は 2 回目のオープンで属性を失います
これは非常に特殊なケースであり、私はそれを尋ねるのは気が引けます。しかし、私はそれに取り組んでいます。
フォームから結果ページまで追跡番号をたどる必要があるため、Pythonでmechanizeを使用しています。フォーム送信後のリンクはjavascriptに埋め込まれているため、単にfollow_linkを実行することはできません。私がやりたいのは、URLを正規表現してからそれを呼び出すopen()
ことですが、そうするといくつかの問題が発生します。
br.geturl()
ターゲットページで問題なく呼び出すことができますbr.title()
が、問題のページのソースを読み取るときにスローされます
これを行う方法はありますか、それともモンキーパッチを適用しすぎていますか、アドバイスは素晴らしいでしょう
編集 [より多くのコード {実際に動作させようとしているだけで本当に醜い}]:
ruby-on-rails - rorMechanizeに戸惑う
mechanizeを使用して、大学のクラススケジュールデータベースで簡単な検索を実行しようとしています。次のコードはnilを返しますが、Facebookにログインしてgoogleを検索します(diff url / paramsを使用)。私は何が間違っているのですか?
私はここで最新の(素晴らしい)railscastをフォローしています。ドキュメントの機械化は役に立ちましたが、私はまだ戸惑っています。よろしくお願いします!
python - ログインフォームをhttpからhttpsに送信するように機械化する
HTTP経由でロードするログインフォームを含むWebページがありますが、HTTPS経由でデータを送信します。
このサイトにログインするためにpython-mechanizeを使用していますが、データはHTTP経由で送信されているようです。
私のコードは次のようになります:
フォームが送信されると、接続はHTTP経由で行われ、次のようなものが含まれます。
誰かがこれを確認し、最終的に解決策を投稿して、フォームがHTTPS経由で送信されるようにすることはできますか?
後で編集:
1)http / httpsトラフィックにHTTPプロキシを使用しています(環境で設定-Linuxマシン)
2)Wiresharkでトラフィックを監視し、トラフィックが通常のHTTP経由で送信されていることを確認できます( POSTとmechanizeのコンテンツは、ウェブブラウザと同じリクエストをプロキシに送信しません。後者はCONNECT login.us.site.com:443を送信しますが、機械化はPOSTのみですhttps://login.us.site.com) 。ただし、データがプロキシを離れるときにデータがどうなるかはわかりません。おそらくそれはターゲットサイトへのSSL接続を確立しますか?
ruby-on-rails - FakeWeb で機械化する
ページからリンクを抽出するために Mechanize を使用しています。開発を容易にするために、コードを実行するたびに待ち時間と煩わしさを軽減するために、fakeweb を使用して超高速応答を行います。
上記のコードを実行すると、次のように表示されます。
ページオブジェクトのクラスを調べた後
tags_url を偽造しなければ、ページ クラスが Page になったので機能します。
では、mechanize で fakeweb を使用して、File オブジェクトの代わりに Page を返すにはどうすればよいでしょうか?
ruby - 機械化ページのエンコーディングを設定するには?
リンクをクリックして ISO-8859-1 エンコーディングのページを取得しようとしているので、コードは次のようになります。
これまでのところ、間違ったエンコーディングで結果が得られるため、次のような文字が表示されます。
次のようないくつかのアプローチを試しました。
次のようなエージェントを使用して、最初のリクエストでエンコーディングを指定します。
/li>ページ自体のエンコーディングの記述
/li>
しかし、私は何か間違ったことをしているに違いありません.単純なプットは常に間違った文字を表示します.
エンコーディングを記述する方法を知っていますか?
前もって感謝します、
追加: 実行可能な例:
ruby - FileUtils を使用して、WWW::Mechanize::File をディスクに保存します。
Ruby で Mechanize を使用するagent.get('http://example.com/foo.torrent')
と、FileUtils などを使用して特定のファイルを取得できます。このファイルをハード ドライブ (たとえば、スクリプトが実行されているディレクトリ) に保存するにはどうすればよいですか?
PSclass => WWW::Mechanize::File
python - Python urllib プロキシ
urllib を介していくつかの URL をフェッチし、プロキシを介して機械化しようとしています。
機械化を使用して、次のことを試します。
次のエラーが表示されます。
プロキシ、ユーザー名、パスワードは正しいのですが、何が問題なのですか?
javascript - ページで必要な場合にJavascriptを無視する
MechanizeでのJSサポートについて質問された方もいらっしゃると思います。私の質問は少し違うかもしれません、そして/または異なって提起されるかもしれません。Javascriptチェックを無視して、Javascriptが必要なページにログインしたいと思っています。Webサイト自体は実際にはJSを必要としませんが、開発者は最高の外観のためにJSを必要とすると感じました。
そうは言っても、JSのチェックを回避できる人はいますか?Watir、Watij、Selenium、またはその他の余剰のユーティリティを使用することはできますが、実際のブラウザを開くので、それほど望ましくありませんでした。ただし、これが唯一の方法である場合は、そのルートを使用します。
私はMacOSX、Ruby 1.8.7、Mechanize / Hpricot(この投稿の最新)を実行しています。ありがとう。
javascript - JavaScript を使用したプログラマティック Python ブラウザ
JavaScript を使用する Web サイトのスクリーン スクレイピングを行いたいと考えています。
Python 用のプログラム Web ブラウザーである mechanizeがあります。ただし、(当然のことながら) JavaScript を解釈しません。Python用のプログラムブラウザはありますか? そうでない場合、作成を試みるために使用できる Python の JavaScript 実装はありますか?