問題タブ [mechanize-python]

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.

0 投票する
1 に答える
438 参照

python - mechanize for python でチェックボックスをチェックし、チェックボックスに関連付けられたイベントを実行する方法は?

問題は、フォームにイベントを持つチェックボックスがあることです。

チェックしようとすると、チェックボックスがチェックされました:

CheckboxControl(CheckBox1=[*on])>

しかし、イベントは実行されません。

を使用してみましたbr.submit()が、チェックボックスがオフになっています。

CheckboxControl(CheckBox1=[on])>

0 投票する
1 に答える
1344 参照

mechanize-python - PythonのMechanizeを使用したHtmlフォームの送信-2つの送信ボタンIDなし

1つのフォームと異なるタスクを実行する2つの異なるボタンを含むPHP/HTMLページでHTMLボタンを送信しようとしています。2番目の送信ボタンを送信する必要があります。問題は、どちらのボタンにもid属性がなく、タイトルタグによってのみ区別されることです。選択ボックス(正しいと思います)を使用して注文と注文ラインを選択し、フォームの2番目の[実行]/[送信]ボタンを押す必要があります。例えば

その後、さらに下に...

私のPythonコードスニペットは次のとおりです...

Mechanizeのドキュメントにbr.submit(title ='CSVファイルの生成')などのbr.submitのタイトル属性を指定する方法はないようです。2番目が必要なときにbr.submit()が最初の送信コントロールを選択していると想定していますか?誰かがこれを回避する賢い方法を知っていますか?

0 投票する
1 に答える
1046 参照

python - Pythonと機械化:ページを連続してスクレイプする方法は?

私の問題は次のとおりです。航空券のWebサイトの注文プロセスを実行するスクレーパーを作成しようとしています。ですから、前のページの結果に依存するいくつかのページを削りたいと思います(私が言っていることを理解していただければ幸いです)。私は今これまでのところです:

そして、ここに私の問題があります。通常のURLと同じように、変更して送信したいフォームが再び含まれている可変予約サイトをどのように使用できますか?設定するだけで

??? または、出力を変更して送信する(そして、出力を再度送信して新しい出力ページを受け取る)別の方法はありますか?

0 投票する
1 に答える
577 参照

python - Mechanize(-Python)が一部の非表示のフォームフィールドを見落としているように見えるのに、他のフィールドを見落としているように見えるのはなぜですか?

いくつかのフィールド、いくつかのテキスト、およびいくつかの非表示を持つフォームを使用しています。問題は、mechanize.Browserオブジェクトが「見る」フィールドのリストを見ると、いくつかの重要な非表示フィールドが欠落していることですが、すべてではありません。この同様の質問に対する最も一般的な回答によると、これはWebページがユーザーエージェント文字列をクエリしているために発生しています。それは私には当てはまりません、そして私は2つの理由でこれを知っています:

  1. 「スクレイプされた」フォームをファイルに保存すると、欠落しているフィールドが表示され、
  2. その解決策が示唆するように、ブラウザオブジェクトのユーザーエージェント文字列を変更しましたが、役に立ちません。

私を助けてくれるのは、その問題に対する2番目に人気のある解決策ですが、これがなぜであるかはわかりません。Mechanizeが一部の非表示のフォームフィールドを「表示」し、他のフィールドは「表示」せず、欠落しているフィールドを手動で入力する必要があるのはなぜですか。

0 投票する
0 に答える
152 参照

python - mechanizeで同時リクエストを行う方法は?

mechanize で一度に複数のリクエストを実行することは可能ですか? 私はスレッドについて知っていますが、スレッドの問題は、機械化がスレッドごとにスレッドを処理し、すべてのスレッドを同時に処理するわけではないことです...

私がやりたいことは次のとおりです。ページのフォームに入力して送信し、結果のページを取得し、最後のページのフォームに戻り (br.back())、さまざまな詳細を入力して送信しますそれ、結果のページを取得するなど...このソリューションには時間がかかるため、同時により多くのリクエストを行うことを考えていましたが、方法はありますか? あなたの答えを本当に楽しみにしています。どうもありがとうございました!

0 投票する
0 に答える
471 参照

python - mechanize がこれらのラジオ ボタンを認識しないのはなぜですか?

Web サイト (http://www.proxy-listen.de/Proxy/Proxyliste.html) のフォームのコントロール情報を取得しようとしています。(実際には、フォームに入力して送信し、プロキシ サーバーのリストを取得したいと考えています)。このコードを使用してフォーム要素を読み上げています。

何らかの理由で、mechanize はラジオ ボタン (つまり、ソースコードから見つけた「type」と「liststyle」) を一覧表示しないため、フォームを送信すると不思議なことにメインページ (http://www. proxy-listen.de)。ここに私の完全なコードがあります:

firebug を使用して POST リクエストで送信される変数を既に確認しましたが、ラジオ ボタンは驚くほど POST リクエストの一部ではありません。

どんなポインタでも大歓迎です!どうもありがとうございました。

0 投票する
0 に答える
1477 参照

python - .open() / .read() / .close() を機械化すると None が返される/ソケット内部が None になるのはなぜですか?

AttributeError次のようなコードで sが時々発生します。次のようにmechanizeインスタンスをセットアップしました。

そして、私はそれを次のように使用します:

後者のスニペットでは、例外が発生することがあります。

それ以外の場合、トレースバックは実際には次のようになります。

つまり、 は.read()失敗しませんが、 は失敗.close()します。その他のトレースバック:

と:

なぜこれが起こるのでしょうか?mechanize のドキュメントはあまり良くなく、ソースをカーソルで突き抜けると、比較的複雑であることがわかります。

0 投票する
1 に答える
81 参照

python - Mechanize を使用して、行に特定の単語が含まれているテーブルの最後の列から URL を抽出する方法

私が管理している内部チケット システムの退屈な Web タスクを自動化しようとしています。自動生成されたメール サーバー構成のテーブルを含むページがあります。各行は異なるメール サーバー用であり、各行の最後の列には 2 つのリンクが含まれています。その行の最初の列が特定の単語と一致する場合、最初のリンクを抽出できる必要があります。mechanize を使用して Python でこれを実行しようとしています。

テーブルは次のように呼び出されます。

問題の行は次のようになります。

基本的に、最初の列に「testhandler-mcfake」が含まれている場合、同じ行の最後の列からその編集 URL を抽出したいと考えています。

これは事ですか?それはできますか?

0 投票する
1 に答える
3502 参照

python - 機械化: フォームを送信するが、結果を表示するために新しいページをロードしない

さて、私は少しイライラし始めています。github と here の両方で、スクリプトが機能しない理由を突き止めるために、ほとんどの時間を費やしました。それはかなり単純なはずです。ページの読み込み、フォームの入力、フォームの送信を機械化し、会社情報を含む新しいページを開き、コンテンツを投稿します。うまくいきません。コードを確認すると、正しいフォームが入力されていることがわかりますが、mechanize がフォームを送信した後、新しいページには移動せず、フォームに入力したページにとどまります。コードは次のようになります。

私はそれが非常に単純だと感じていますが、フォームが送信されたときに発生するはずのリダイレクトで何かが欠けていると感じています。

編集: サイトにはたくさんの JavaScript があるようです。それが理由かも?そして、オプションはいつですか?

EDIT2: わかりました。URL に会社番号を追加するだけで目的のページを取得できるようですが、このスクリプトが機能しない理由についてはまだ戸惑っています。

フィードバックをお寄せいただきありがとうございます

0 投票する
1 に答える
208 参照

python-2.6 - ボタンを押してチェックボックスをクリックする方法

ボタンをクリックして、mechanize python ... HTMLコードでチェックボックスをオンにするにはどうすればよいですか:

私は試しました:

しかし、これはエラーをスローします: