問題タブ [mechanize-ruby]

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 投票する
2 に答える
161 参照

ruby - Link#click と Agent#get の機械化

ページ上の特定のリンクを (CSS を使用して) 検索し、href 値で agent#get を使用して、リンクによって参照されるページを取得するアプリケーションがあります。これは今日まで何ヶ月も機能していました (おそらく、他の Web サイトがまだ機能しているため、Web サイトは何かを変更しました)。代わりに、Web サイトは別のページを返します (違いがある場合は、Web ページ階層を上ります。しかし、それはおそらく Web サイトが決定することです)。要求されたページの代わりにそのページを返します)。page.uri は、要求された URI とは異なる返された実際の URI を反映していますが、応答コードは 200 であるため、おそらくリダイレ​​クトは行われませんでした。

何が起こっているのかを把握するために、リンクを見つけて page.links[38].click を実行してみました。それは正しいページを返します。プログラムで正しいリンクを見つけるのはやや問題があります (CSS を使用してリンクを見つけることはできず、要素のみを見つけることができるため) ので、現在の方法を引き続き使用したいと思います。agent#get と link#click を使用したページの取得の違いを理解しようとしています。あなたが質問する前に、agent#get の URI が#clickしたリンクの URI と同じであることを確認しました。 #click は #get と何が違うので、一方が正しいページを取得し、他方が別のページを取得する可能性がありますか?

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

ruby - Ruby Mechanize での text/csv Content-Encoding = UTF-8 の問題

Mechanize V2.5.1 を使用して、UTF-8 でエンコードされた CSV であるページを読み込もうとしたときに、次のコードを使用しました。

しかし、コンテンツ エンコーディング フックが呼び出されていないことがわかり、次のエラーとトレースバックが表示されます。

コンテンツフックコードが起動しない理由と、エラーが発生する理由を知っている人はいますか?

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

ssl - "Errno::ECONNRESET: Connection reset by peer - SSL_connect" を取得するメカニズム

以前は機能していたページを Mechanize にロードさせることができません。確実にErrno: ECONNRESET: Connection reset by peer - SSL_connectメッセージが表示されて失敗しています。私が何を試すべきか、または私が見るべき詳細について何か提案はありますか? (以下の「私が試したこと」を参照してください...)

更新 1

関連する SO の投稿をヒントに、で直接サイトにアクセスしてみましたNet::HTTP。を設定するとhttp.ssl_version = :TLSv1、エラーではなくリダイレ​​クトが表示されます (そうあるべきです)。したがって、私の質問は次のようになります: Net::HTTP の基になるssl_versionパラメーターを内部から構成するにはどうすればよいMechanizeですか?

ありがとう...

症状:

環境:

私が試したこと:

  • Firefox Web ブラウザーから同じ URL を試しました。できます。
  • Mechanizerequest_headersが Firefox ブラウザーを正確に模倣するように明示的に設定しました。変化なし。
  • I've updated my ssl/cert.pem file (a second time) as described in this S.O post. No change.
  • I've tried different sites: www.pge.com and www.sdge.com. Both work. There's something different about the www.sce.com site.

Success with Net::HTTP

Here's an example of Net::HTTP working:

0 投票する
2 に答える
216 参照

ruby-on-rails - Mechanize (Ruby) 経由で Amazon フォームを送信できません

私が書いたスクリプトでは、ユーザーの代わりに認証情報を使用して Amazon に正常にログインしています。次に、フォームに記入して新しい住所を入力しようとしています。これが私の現在のコードです:

フォームを送信すると、同じ「Add an Address」フォームが表示されますが、認識できるエラーはなく、ページに新しいものは何もありません。リクエストにはnew_response同じフォームが記入されています。

投稿リクエストを検査すると、次のようになります。

私にとって際立っている主なことは、その最後の部分です。

私はどこにも設定newAddress.xしていnewAddress.yません。できないようです。

これが正常に送信されない理由について何か考えはありますか? おそらくSSLの問題ですか?