草庐IT

mechanical

全部标签

ruby Mechanize 404 => 网络::HTTPNotFound

我有一个无法使用Mechanize访问的URL,我不知道为什么:#Useruby2.1.6require'mechanize'require'axlsx'#2.0.1require'roo'#1.13.2mechanize=Mechanize.newmechanize.request_headers={"Accept-Encoding"=>""}mechanize.ignore_bad_chunking=truemechanize.follow_meta_refresh=truexlsx=Roo::Excelx.new("./base_list.xlsx")xlsx.each_with

ruby - 如何让 Mechanize 自动将正文转换为 UTF8?

我找到了一些使用post_connect_hook和pre_connect_hook的解决方案,但它们似乎不起作用。我正在使用最新的Mechanize版本(2.1)。新版本没有[:response]字段,新版本不知道去哪里找。https://gist.github.com/search?q=pre_connect_hookshttps://gist.github.com/search?q=post_connect_hooks是否可以让Mechanize返回UTF8编码版本,而不必使用iconv手动转换它? 最佳答案 从Mechani

ruby - 在 Mechanize 中使用登录表单

我知道Stackoverflow上有与此非常相似的帖子,但我似乎仍然无法弄清楚我的尝试有什么问题。#logintothesitemech.get(base_URL)do|page|l=page.form_with(:action=>"/site/login/")do|f|username_field=f.field_with(:name=>"LoginForm[username]")username_field.value=userNamepassword_field=f.field_with(:name=>"LoginForm[password]")password_field.va

ruby-on-rails - 使用 Mechanize 在 html 页面中查找字符串

我正在尝试查找给定的字符串,假设“Hello”存在于给定的页面中。到目前为止,我有以下内容:agent=Mechanize.newpage=agent.get('http://www.google.de/')我现在该怎么办?我见过搜索方法,但它只接受XPath/CSS表达式。我可以尝试使用xpath来搜索,但是有没有更好的方法? 最佳答案 您可以简单地进行一般文本搜索:page.body.include?('Hello')然而,在搜索特定的html节点时,我建议使用这样的css选择器:page.parser.css('#my_con

ruby - Mechanize : Select link by classname and other questions

目前我正在查看Mechanize。我是Ruby的新手,所以请耐心等待。我写了一个小测试脚本:require'rubygems'require'mechanize'agent=WWW::Mechanize.newpage=agent.get('http://www.google.de')pppage.titlegoogle_form=page.form_with(:name=>'f')google_form.q='test'page=agent.submit(google_form)pppage.titlepage_links=Array.newpage.links.eachdo|ll|

ruby - 使用 Mechanize for Ruby 抓取 Akamai 控制面板的屏幕 - Cookies 问题

我正尝试从Akamai的控制面板中抓取一些数据,但在通过mechanizeforRuby登录页面时遇到问题。require'rubygems'require'mechanize'agent=Mechanize.newurl='http://control.akamai.com'page=agent.get(url)putspage.content检查页面后,我发现显示:"Cookiesupporthasbeendisabledinyourbrowser.Pleaseenablecookiesbeforecontinuing."页面认为我禁用了cookie的事实阻止我登录。有什么想法吗?

ruby - 如何使用 ruby​​/mechanize 在表单中选择下拉列表的值

如何在此下拉列表中选择第二个选项?PleaseSelectanOptionABCDFGHIJrubyrequire'rubygems'require'mechanize'url="http://...."agent=Mechanize.newpage=agent.get(url)form=agent.page.forms.first*selectdropdown* 最佳答案 form.field_with(:name=>'size').options[1].click 关于ruby-如何

ruby - 如何在 Ruby 中使用 mechanize 执行 Head 请求

我可以使用Faraday(Faraday.headurl)执行HEAD请求,但我在当前项目中使用Mechanize。我想在不下载文件的情况下从标题(文件名)中获取一个值。Mechanizegem是否提供这样的选项?我正在使用v2.0。 最佳答案 就像get但它是head:page=agent.head'http://www.google.com/'page.body.length#=>0page.header.keys#=>["date","expires","cache-control","content-type","set-c

ruby - 使用 Ruby Mechanize 下载文件

我正在尝试使用mechanize保存文件。我包含的脚本使我能够下载名称正确但没有内容的文件。关于我可能做错了什么的任何想法?这是我正在使用的资源。http://www.rubydoc.info/gems/mechanize/Mechanize/File任何帮助都会很棒!谢谢!require'mechanize'uri=URI'http://website.com/page.html'file=Mechanize::File.newuri,nil,''filename=file.saveputsfilename 最佳答案 mecha=

ruby - 使用 Ruby WWW::Mechanize 时忽略 Iconv::IllegalSequence

我在使用mechanize库时在某些网页上遇到了Iconv::IllegalSequence错误。有没有办法让Mechanize只是忽略错误编码的字符并返回“剪切”页面?我知道relatedthread,但我宁愿丢弃页面上的一些字符,然后重新实现编码猜测。时间差 最佳答案 解决办法是把util.rb中的第40行改成Iconv.iconv(code,"UTF-8",s).join("")到Iconv.iconv("#{code}//IGNORE","UTF-8",s).join("")或Iconv.conv("#{code}//IGN