我使用Ruby和Nokogiri宝石来刮擦。
当我从特定网站抓取数据时,使用示例网址
http://www.foo.com/bar.php?s=stuff&sub=morestuff
我最终从Nokogiri的http://www.foo.com/bar.php
页面获取了HTML。
如何从包含PHP查询的页面获取HTML?
我使用的代码是:
require 'open-uri'
require 'Nokogiri'
URL = "http://www.foo.com/bar.php?s=stuff&sub=morestuff"
data = Nokogiri::HTML(open(URL))
非常感谢任何帮助。
答案 0 :(得分:1)
使用uri并使用参数创建网址
require 'uri'
require 'open-uri'
require 'nokogiri'
uri = URI.parse('http://www.foo.com/bar.php')
params = { :s => "stuff", :sub => "morestuff" }
# Add params to URI
uri.query = URI.encode_www_form(params)
html = open(uri) do |f|
charset = f.charset
f.read
end
doc = Nokogiri::HTML.parse(html, nil, charset)