[ruby] mechanize에서 현재 페이지의 쿠키와 URL을 가져옵니다.
5620 단어 Ruby
json 파일을 열 때 쿠키 정보 부여
sq.rb
require 'mechanize'
require 'net/http'
require 'uri'
require 'open-uri'
require "json"
username = 'hoger'
password = 'hoge'
agent = Mechanize.new
page = agent.get('URL')
# login
login_form = page.forms[0]
login_form.field_with(:name => 'identity').value = username
login_form.field_with(:name => 'password').value = password
mypage = login_form.submit
# 現在いるページのURL
p mypage.uri.to_s
# cookie情報をゲット
cookie = agent.cookie_jar
# cookie情報を付与した状態でjsonファイルopen
# タイトル一覧をぶっこぬき
uri = URI.parse("jsonファイルpath")
request = Net::HTTP::Get.new(uri)
request["Cookie"] = cookie["hash"].to_s
req_options = {
use_ssl: uri.scheme == "https",
}
response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
http.request(request)
end
data = JSON.parse(response.body)
data.each { |e| p e["title"] }
쿠키 같은 정보를 부여할 때 편리해요.
curl-to-ruby를 사용하면 JSON 파일을 열 때 추가해야 할 정보를 바로 알 수 있습니다. 원본 코드를 비교해 보세요!
참고 자료
Mechanize::CookieJar
Reference
이 문제에 관하여([ruby] mechanize에서 현재 페이지의 쿠키와 URL을 가져옵니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yujiG/items/0831fcbb65022151719b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)