Tag: nokogiri

如何用NokogiriparsingHTML表格?

我安装了Ruby和机械化。 在我看来,在Nokogiri可以做我想做的事情,但我不知道该怎么做。 这table呢? 它只是vBulletin论坛网站的HTML的一部分。 我试图保持HTML结构,但删除一些文本和标签属性。 我想要得到一些细节,如:标题,作者,date,时间,回复和视图。 请注意,HTML文档中有几个表? 我在它的tbody之后的一个特定的表格之后, <tbody id="threadbits_forum_251"> 。 名字将永远是相同的(我希望)。 我可以在代码中使用tbody和name吗? <table > <tbody> <tr> <!– table header –> </tr> </tbody> <!– show threads –> <tbody id="threadbits_forum_251"> <tr> <td></td> <td></td> <td> <div> <a href="showthread.php?t=230708" >Vb4 Gold Released</a> </div> <div> <span><a>Paul M</a></span> </div> </td> <td> 06 Jan 2010 <span class="time">23:35</span><br /> by <a href="member.php?find=lastposter&amp;t=230708">shane943</a> […]

使用rspec时出错,安装Homebrew和卸载MacPorts后缺less库

我可能已经超出了我的知识范围。 我安装了自制软件 ,在它继续给我警告安装了MacPorts之后,我卸载了它。 但是现在我的rspectesting不运行。 这些是我得到的错误: /Users/mark/.rvm/gems/ruby-1.9.2-p180/gems/nokogiri-1.4.4/lib/nokogiri.rb:13:in `require': dlopen(/Users/mark/.rvm/gems/ruby-1.9.2-p180/gems/nokogiri-1.4.4/lib/nokogiri/nokogiri.bundle, 9): Library not loaded: /opt/local/lib/libiconv.2.dylib (LoadError) Referenced from: /Users/mark/.rvm/gems/ruby-1.9.2-p180/gems/nokogiri-1.4.4/lib/nokogiri/nokogiri.bundle Reason: Incompatible library version: nokogiri.bundle requires version 8.0.0 or later, but libiconv.2.dylib provides version 7.0.0 – /Users/mark/.rvm/gems/ruby-1.9.2-p180/gems/nokogiri-1.4.4/lib/nokogiri/nokogiri.bundle ….. ….. 我已经通过Homebrew安装了libiconv,但是没有解决它。 它抱怨libiconv版本号。 这是问题吗? 这里发生了什么,我需要做什么?

在rails 3.1.0和ubuntu上安装Nokogiri 1.5.0时出错

这是在服务器上运行bundle install vendor / gem的错误: Installing nokogiri (1.5.0) with native extensions Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /home/dtt/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb checking for libxml/parser.h… no —– libxml2 is missing. please visit http://nokogiri.org/tutorials/installing_nokogiri.html for help with installing dependencies. —– *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries […]

在单个节点上使用XPath将返回所有节点中的元素

我正在parsing一个如下所示的XML文档: <MyBook> <title>Favorite Poems</title> <issn>123-456</issn> <pages>45</pages> </MyBook> <MyBook> <title>Chocolate Desserts</title> <issn>654-098</issn> <pages>100</pages> </MyBook> <MyBook> <title>Jabberwocky</title> <issn>454-545</issn> <pages>19</pages> </MyBook> 我使用xpath来取出MyBook节点,像这样遍历它们: xmldoc.xpath("//MyBook").each do |node| mytitle=node.xpath("//title").text puts mytitle end 输出如下所示: Favorite PoemsChocolateDessertsJabberwocky Favorite PoemsChocolateDessertsJabberwocky Favorite PoemsChocolateDessertsJabberwocky 就好像这个节点真的是整个xmldoc一样。 但是,如果我打印出迭代器中的节点,每次都是我所期望的,只是一个MyBook节点。 我需要能够从每个节点中连续地取出子节点​​,而不是从整个文档中的所有相同types的子节点。 我究竟做错了什么?

在El Capitan上安装Nokogiri(1.6.7)时出错

我的一个开发人员已经更新了Nokogiri,当拉动更新后的Gemfile时,我的bundle install失败。 ➜ my-project git:(master) bundle install Fetching source index from https://rubygems.org/ Using rake 10.4.2 Using i18n 0.7.0 Using json 1.8.3 Using minitest 5.8.3 Using thread_safe 0.3.5 Using tzinfo 1.2.2 Using activesupport 4.2.3 Using builder 3.2.2 Using erubis 2.7.0 Using mini_portile2 2.0.0 Gem::Ext::BuildError: ERROR: Failed to build gem native extension. /Users/me/.rvm/rubies/ruby-2.1.2/bin/ruby extconf.rb –use-system-libraries checking if […]

如何删除Nokogiri节点?

如何使用Nokogiri去除<img>标签? 我有下面的代码,但它不会工作: # str = '<img src="canadascapital.gc.ca/data/2/rec_imgs/5005_Pepsi_H1NB.gif"/…; testt<a href="#">test</a>tfbu' f = Nokogiri::XML.fragment(str) f.search('//img').each do |node| node.remove end puts f

如何使用Nokogiri访问属性

我有一个简单的任务来访问一些属性的值。 下面是一个简单的脚本,它使用Nokogiri::XML::Builder创build一个简单的xml文档。 require 'nokogiri' builder = Nokogiri::XML::Builder.new(:encoding => 'UTF-8') do |xml| xml.Placement(:messageId => "392847-039820-938777", :system => "MOD", :version => "2.0") { xml.objects { xml.object(:myattribute => "99", :anotherattrib => "333") xml.nextobject_ '9387toot' xml.Entertainment "Last Man Standing" } } end puts builder.to_xml puts builder.root.attributes["messageId"] 结果如下: <?xml version="1.0" encoding="UTF-8"?> <Placement messageId="392847-039820-938777" version="2.0" system="MOD"> <objects> <object anotherattrib="333" myattribute="99"/> <nextobject>9387toot</nextobject> […]

nokogirigem安装错误

我知道关于这个gem有很多问题,但没有答案为我工作。 当我在SSH中运行gem install nokogiri我得到这个错误: Extracting libxml2-2.8.0.tar.gz into tmp/x86_64-unknown-linux-gnu/ports/libxml2/2.8.0… OK Running patch with /home/user58952277/.gem/ruby/1.9.3/gems/nokogiri-1.6.2.1/ports/patches/libxml2/0001-Fix-parser-local-buffers-size-problems.patch… Running 'patch' for libxml2 2.8.0… ERROR, review 'tmp/x86_64-unknown-linux-gnu/ports/libxml2/2.8.0/patch.log' to see what happened. *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration […]

如何在Mac OS Sierra 10.12上安装Nokogiri

我在安装Mac OS Sierra 10.12上的Nokogiri(1.6.8.1)时遇到麻烦。 我尝试使用brew install libxml2 libxslt ,然后使用命令行选项引用安装目录,但没有帮助。

在OSX 10.10 Yosemite上安装Nokogiri

我最近升级到10.10优胜美地testing版,但是我很难安装Nokogiri。 我正在使用RVM和Ruby 1.9.3。 我也按照这里的步骤,尝试按照Nokogiri的主页上的指示。 我已经通过自制程序安装了libxml2(2.9.1)和libxslt(1.1.28),并尝试使用我的Xcode 5安装和Xcode 6testing版的命令行工具。 gem install nokogiri -v '1.5.5' Building native extensions. This could take a while… ERROR: Error installing nokogiri: ERROR: Failed to build gem native extension. /Users/grantdavis/.rvm/rubies/ruby-1.9.3-p362/bin/ruby extconf.rb checking for libxml/parser.h… *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. […]