如何从以下网站获取号码(使用 nokogiri)
How can I get the numbers from the following website (using nokogiri)
我的代码可以正常工作,但现在除了我需要的号码之外,我可以从网站上获取任何信息。
代码为
require 'open-uri'
require 'nokogiri'
require 'curb'
require 'json'
require 'pp'
require 'openssl'
ejnumber4 = Nokogiri::HTML(open('https://www.sazka.cz/loterie/eurojackpot/sazky-a-vysledky'))
ejnumber4.css('.number-row').css('.numbers').text
我错过了什么?
谢谢。
网站从连续 2 次 API 调用中获取数据。第一个是获取包含日期和抽奖 ID 的过去抽奖列表:
GET https://www.sazka.cz/api/draw-info/past-draws/eurojackpot
第二个是获取特定开奖ID的开奖结果:
GET https://www.sazka.cz/api/draw-info/draws/universal/eurojackpot/[DRAW_ID]
您可以尝试以下bash script using curl and jq来获取最后的开奖结果:
#!/bin/bash
id=$(curl -s "https://www.sazka.cz/api/draw-info/past-draws/eurojackpot" | jq -r '.[0].id')
curl -s "https://www.sazka.cz/api/draw-info/draws/universal/eurojackpot/$id" | jq '.'
将 ruby 与 net/http 一起使用:
require 'net/http'
require 'json'
res = Net::HTTP.get(URI("https://www.sazka.cz/api/draw-info/past-draws/eurojackpot"))
id = JSON.parse(res)[0]["id"]
res = Net::HTTP.get(URI("https://www.sazka.cz/api/draw-info/draws/universal/eurojackpot/#{id}"))
p JSON.parse(res)
将 ruby 与 open-uri 一起使用:
require 'open-uri'
require 'json'
res = open("https://www.sazka.cz/api/draw-info/past-draws/eurojackpot").read
id = JSON.parse(res)[0]["id"]
res = open("https://www.sazka.cz/api/draw-info/draws/universal/eurojackpot/#{id}").read
p JSON.parse(res)
输出示例:
{ "drawId"=>2021255, "drawDate"=>"2021-06-25T19:00:00", "week"=>25, "year"=>2021, "draws"=>[[30, 4, 22, 47, 17], [1, 8]], "drawsExtra"=>nil, "addonDraw"=>[4, 0, 6, 9, 4, 3] .....
......
我的代码可以正常工作,但现在除了我需要的号码之外,我可以从网站上获取任何信息。
代码为
require 'open-uri'
require 'nokogiri'
require 'curb'
require 'json'
require 'pp'
require 'openssl'
ejnumber4 = Nokogiri::HTML(open('https://www.sazka.cz/loterie/eurojackpot/sazky-a-vysledky'))
ejnumber4.css('.number-row').css('.numbers').text
我错过了什么?
谢谢。
网站从连续 2 次 API 调用中获取数据。第一个是获取包含日期和抽奖 ID 的过去抽奖列表:
GET https://www.sazka.cz/api/draw-info/past-draws/eurojackpot
第二个是获取特定开奖ID的开奖结果:
GET https://www.sazka.cz/api/draw-info/draws/universal/eurojackpot/[DRAW_ID]
您可以尝试以下bash script using curl and jq来获取最后的开奖结果:
#!/bin/bash
id=$(curl -s "https://www.sazka.cz/api/draw-info/past-draws/eurojackpot" | jq -r '.[0].id')
curl -s "https://www.sazka.cz/api/draw-info/draws/universal/eurojackpot/$id" | jq '.'
将 ruby 与 net/http 一起使用:
require 'net/http'
require 'json'
res = Net::HTTP.get(URI("https://www.sazka.cz/api/draw-info/past-draws/eurojackpot"))
id = JSON.parse(res)[0]["id"]
res = Net::HTTP.get(URI("https://www.sazka.cz/api/draw-info/draws/universal/eurojackpot/#{id}"))
p JSON.parse(res)
将 ruby 与 open-uri 一起使用:
require 'open-uri'
require 'json'
res = open("https://www.sazka.cz/api/draw-info/past-draws/eurojackpot").read
id = JSON.parse(res)[0]["id"]
res = open("https://www.sazka.cz/api/draw-info/draws/universal/eurojackpot/#{id}").read
p JSON.parse(res)
输出示例:
{ "drawId"=>2021255, "drawDate"=>"2021-06-25T19:00:00", "week"=>25, "year"=>2021, "draws"=>[[30, 4, 22, 47, 17], [1, 8]], "drawsExtra"=>nil, "addonDraw"=>[4, 0, 6, 9, 4, 3] .....
......