100記事x100ページまで取得できるので、上限は1万記事。
Ruby
require 'net/https'
require 'uri'
(1..100).each do |i|
uri = URI.parse("https://qiita.com/api/v2/users/#{ENV['USER_ID']}/items?page=#{i}&per_page=100")
res = Net::HTTP.get_response(uri)
puts res.response.body
end
コマンド実行例
USER_ID=yumainaura ruby qiita-post.rb | jq
Qiita API のTOKENを使って実行上限数対策をする場合の例
require 'net/https'
require 'uri'
(1..100).each do |i|
uri = URI.parse("https://qiita.com/api/v2/users/#{ENV['USER_ID']}/items?page=#{i}&per_page=100")
request = Net::HTTP::Get.new(uri.request_uri, {'Content-Type' =>'application/json', "Authorization" => "Bearer #{ENV['TOKEN']}"})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
response = http.request(request)
puts response.response.body
end
参考
チャットメンバー募集
何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。