問題タブ [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.
ruby - www::mechanize 使用時の Iconv::IllegalSequence
私は少しウェブスクレイピングをしようとしていますが、WWW:Mechanize gem はエンコーディングを好まないようで、クラッシュします。
投稿リクエストの結果、302 リダイレクトが発生し (これは機械化されていますが、これまでのところ良好です)、結果のページがクラッシュしたように見えます。私はかなりグーグルで検索しましたが、これを解決する方法はこれまでのところ何もありませんでした。アイデアはありますか?
コード:
エラー:
macos - Mac OS X 10.4.11 に mechanize gem をインストールすると、'Failed to build gem native extension' が表示される
MAC OS X に mechanize gem をインストールしようとしていますが、次のエラーが発生し続けます。
エラー: mechanize のインストール中にエラーが発生しました:
エラー: gem ネイティブ拡張機能のビルドに失敗しました。/usr/local/bin/ruby extconf.rb install mechanize
#include を チェック...
はい#include をチェック ... はい #include をチェック ... はい #include をチェック ... はい xmlParseDoc() をチェック-lxml2 で... はい -lxslt で xsltParseStylesheetDoc() をチェックしています... はい -lexslt で exsltFuncRegister () をチェックしています... はい Makefile を作成して います** gcc -I を作成します。-私。-I/usr/local/lib/ruby/1.8/i686-darwin8.9.1 -I. -I/opt/local/include/ -I/opt/local/include/libxml2 -fno-common -g -O2 -pipe -fno-common -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings - Wconversion -Wmissing-noreturn -Winline -c html_document.c ./html_document.h:4
からインクルードされたファイル、
html_document.c:1 から:
./native.h:11:28: エラー: libxml/xmlsave.h: Noそのようなファイルまたはディレクトリの
作成: * ** [html_document.o] エラー 1**
そのため、xmlsave.h は /opt/local/include/ または /opt/local/include/libxml2 内に見つかりませんでした
次に、libxml ヘッダー ディレクトリから /opt/local/include/xml2 へのシンボリック リンクを作成することにしました。
しかし、まだ宝石をインストールできません。
ポインタやアイデアは大歓迎です。
ruby - Ruby-WWW::MechanizeとNET::HTTP::GETを使用したSocks4プロキシ
グーグルで検索してルビーのマニュアルを読みましたが、socks4プロキシでWWW::MechanizeとNET::HTTP::GETを使用する方法が見つかりませんでした。
WWW :: MechanizeはUserAgentモジュールのサブクラスであるため、-> proxy()メソッドが機能することを読みました。ただし、このマニュアルでは、http、ftp、およびgopherプロキシについてのみ説明しています。
socks4をサポートする方法はありますか?コードスニペットは次のとおりです。
ruby-on-rails - 奇妙なhttpsフォームRoRで機械化する
私はRoRを使用して、mechanizeを使用して大学で簡単なフォームを検索しようとしています。コードはグーグルを検索するためにうまく機能しますが、結果に検索フォームを返しますか?私は本当に混乱しています。何かアドバイス?ありがとう!
ruby - Firefox と Ruby Mechanize の投稿フォーム パラメータの違い
mechanize が正しい post queryを送信するかどうかを調べようとしています。
フォーラムにログインしたいのですが ( HTML ソースを参照してください。別の質問でログを機械化してください)、ログイン ページしか表示されません。調べてみると、Firefoxが次のようなパラメーターで投稿を送信していることがわかります
auth_username=myusername&auth_password=mypassword&auth_login=Login
しかし、私のスクリプトは送信します
auth_username=radek&auth_password=mypassword
それは大丈夫ですか、それとも&auth_login=Login
パーツが存在する必要がありますか?
使用して追加しようとするとlogin_form['auth_login'] = 'Login'
、エラーgems/mechanize-0.9.3/lib/www/mechanize/page.rb:13 in
meta': undefined methodが表示されましたsearch' for nil:NilClass (NoMethodError)
auth_login はフィールドではなくフォームボタンのようです (問題があるかどうかはわかりません)
私のスクリプトは次のとおりです
より多くのコード、html を見つけて、私の他の関連する質問にログインして、ブラウザでログインしてから、ruby/mechanize がそれを引き継ぐことができますか?
mysql - `sysread':中断されたシステムコール(Errno :: EINTR)Rubyおよびmysqlを使用する場合
mechanizeを使用してサイトをスクレイピングし、mysqldbにプッシュしています。これらのsys読み取りエラーが頻繁に発生しますが、解決策がわかりません。私はRuby-mysqlgemを使用しています。
ruby - Webrat、Mechanizeの「ベースURL」の設定方法
ベース URL を指定したいので、常に絶対 URL を指定する必要はありません。Mechanize が使用するベース URL を指定するにはどうすればよいですか?
ruby - Ruby Mechanizeのキャッシングプラグインを知っている人はいますか?
WebサイトをスクレイプするためのMechanizeベースのRubyスクリプトがあります。ダウンロードしたHTMLページをローカルにキャッシュして、「出力の微調整->実行->出力の微調整」サイクル全体を高速化することで、速度を上げたいと考えています。このスクリプトのためだけに、マシンに外部キャッシュをインストールする必要はありません。理想的なソリューションは、フェッチされたページや画像などを機械化して透過的にキャッシュするプラグインです。
これを行うライブラリを知っている人はいますか?または、同じ結果を達成する別の方法(スクリプトは2回目ではるかに高速に実行されます)?
ruby - Mechanize 404 をキャッチ => Net::HTTPNotFound
URLのフェッチを処理する簡単な関数を書きました:
問題は、最初のレスキュー ブロックをキャッチNet::HTTPNotFound
しているにもかかわらず、ログ レコードに次のように表示されることです。
これは、この例外が 2 番目のレスキュー ブロックによってキャッチされたことを意味します。その理由は何でしょうか?