Я столкнулся с этой проблемой на php 7.1, который поставляется с High Sierra (OS X 10.13.5), редактирование /etc/apache2/httpd.conf
со следующими изменениями помогло:
LoadModule php7_module libexec/apache2/libphp7.so
<IfModule php7_module>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
</IfModule>
В Ruby у нас есть Nokogiri, который позволяет вам искать документы с помощью селекторов XPath или CSS3:
doc = Nokogiri::HTML(open("https://www.test.com"))
doc.at_css('div#price').text
или:
doc = Nokogiri::HTML response.body
doc.at_css('div#price').text
Вы, вероятно, хотите использовать драгоценный камень https://github.com/sparklemotion/nokogiri .
Nokogiri (鋸) - это Rubygem, предоставляющий парсеры HTML, XML, SAX и Reader с поддержкой XPath и CSS-селекторов.
blockquote>require 'nokogiri' html = <<HTML <div id="block1"> <a href="http://google.com">link1</a> </div> <div id="block2"> <a href="http://stackoverflow.com">link2</a> <a id="tips">just a bookmark</a> </div> HTML doc = Nokogiri::HTML(html) doc.css('#block1 a[href]').text #=>link1
Чтобы изменить ваш пример:
require 'net/http' require 'uri' require 'nokogiri' uri = URI.parse("https://www.example.com") request = Net::HTTP::Get.new(uri) request.content_type = "application/json" request["Accept"] = "application/json" req_options = { use_ssl: uri.scheme == "https", } response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http| http.request(request) end response.body doc = Nokogiri::HTML.parse(response.body) doc.css('p').text; #=> "This domain is established to be used for illustrative examples in documents. You may use this\n domain in examples without prior coordination or asking for permission.More information..."