{"id":10471,"date":"2023-07-14T08:55:12","date_gmt":"2023-07-13T23:55:12","guid":{"rendered":"https:\/\/www.sambuichi.jp\/?p=10471"},"modified":"2023-07-14T09:25:04","modified_gmt":"2023-07-14T00:25:04","slug":"github-issues%e3%81%8b%e3%82%89%e3%83%86%e3%82%ad%e3%82%b9%e3%83%88%e3%82%92%e3%83%80%e3%82%a6%e3%83%b3%e3%83%ad%e3%83%bc%e3%83%89%e3%81%97%e3%81%a6csv%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab%e5%87%ba","status":"publish","type":"post","link":"https:\/\/www.sambuichi.jp\/?p=10471","title":{"rendered":"GitHub issues\u304b\u3089\u30c6\u30ad\u30b9\u30c8\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066CSV\u30d5\u30a1\u30a4\u30eb\u51fa\u529b"},"content":{"rendered":"<p>Views: 347<\/p><div id=\"header\">\n<h1>GitHub issues\u304b\u3089\u30c6\u30ad\u30b9\u30c8\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066CSV\u30d5\u30a1\u30a4\u30eb\u51fa\u529b<\/h1>\n<div id=\"toc\" class=\"toc2\">\n<div id=\"toctitle\">Table of Contents<\/div>\n<ul class=\"sectlevel1\">\n<li><a href=\"#_\u524d\u63d0\u74b0\u5883\u306e\u6574\u5099\u3068\u78ba\u8a8d\">1. \u524d\u63d0\u74b0\u5883\u306e\u6574\u5099\u3068\u78ba\u8a8d<\/a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_github\u304b\u3089issue\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3059\u308b\u65b9\u6cd5\">1.1. GitHub\u304b\u3089Issue\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3059\u308b\u65b9\u6cd5<\/a><\/li>\n<li><a href=\"#_api\u30ad\u30fc\u3092\u6307\u5b9a\u3059\u308b\u65b9\u6cd5\">1.2. API\u30ad\u30fc\u3092\u6307\u5b9a\u3059\u308b\u65b9\u6cd5<\/a><\/li>\n<li><a href=\"#_\u8a8d\u8a3c\u306e\u624b\u9806\u306b\u3064\u3044\u3066\u3055\u3089\u306b\u8a73\u7d30\u3092\u63d0\u4f9b\u3057\u3066\u304f\u3060\u3055\u3044\">1.3. \u8a8d\u8a3c\u306e\u624b\u9806\u306b\u3064\u3044\u3066\u3055\u3089\u306b\u8a73\u7d30\u3092\u63d0\u4f9b\u3057\u3066\u304f\u3060\u3055\u3044<\/a><\/li>\n<li><a href=\"#_postman\u3092\u4f7f\u7528\u3057\u3066get\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u65b9\u6cd5\">1.4. Postman\u3092\u4f7f\u7528\u3057\u3066GET\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u65b9\u6cd5<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"#_python\u30d7\u30ed\u30b0\u30e9\u30e0\">2. Python\u30d7\u30ed\u30b0\u30e9\u30e0<\/a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_csv\u30d5\u30a1\u30a4\u30eb\u3067issue\u30ea\u30b9\u30c8\u3092\u51fa\u529b\u3059\u308bpython\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\">2.1. CSV\u30d5\u30a1\u30a4\u30eb\u3067issue\u30ea\u30b9\u30c8\u3092\u51fa\u529b\u3059\u308bPython\u30d7\u30ed\u30b0\u30e9\u30e0\u3092<\/a><\/li>\n<li><a href=\"#_issue\u306b\u5bfe\u3059\u308bresponce\u3082\u542b\u3081\u3066\u304f\u3060\u3055\u3044\">2.2. issue\u306b\u5bfe\u3059\u308bresponce\u3082\u542b\u3081\u3066\u304f\u3060\u3055\u3044<\/a><\/li>\n<li><a href=\"#_url_httpsapi_github_comreposownerrepoissues_\u306f\u9593\u9055\u3044\">2.3. url = &#8216;https:\/\/api.github.com\/repos\/{owner}\/{repo}\/issues&#8217; \u306f\u9593\u9055\u3044<\/a><\/li>\n<li><a href=\"#_issues\u304c\uff13\uff10\u4ef6\u3057\u304b\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\uff16\uff11\u4ef6\u3067\u3059\">2.4. issues\u304c\uff13\uff10\u4ef6\u3057\u304b\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3002\uff16\uff11\u4ef6\u3067\u3059\u3002<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"#_\u4f7f\u7528\u4e2d\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\">3. \u4f7f\u7528\u4e2d\u306e\u30d7\u30ed\u30b0\u30e9\u30e0<\/a><\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div id=\"content_adoc\">\n<div id=\"preamble\">\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Nobuyuki SAMBUICHI<br \/>\n<a href=\"https:\/\/www.iso.org\/committee\/5648297.html\">ISO\/TC295 Audit data services<\/a>\/SG1 Semantic model Convener<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>ISO\u3067\u306f\u3001\u6587\u66f8\u4f5c\u6210\u306e\u5171\u540c\u4f5c\u696d\u3092\u6b21\u306e\u5f62\u5f0f\u306e\u30b3\u30e1\u30f3\u30c8\u30b7\u30fc\u30c8\u3092\u7528\u3044\u3066\u884c\u3063\u3066\u3044\u307e\u3059\u3002<\/p>\n<\/div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 9.0909%;\">\n<col style=\"width: 9.0909%;\">\n<col style=\"width: 9.0909%;\">\n<col style=\"width: 9.0909%;\">\n<col style=\"width: 9.0909%;\">\n<col style=\"width: 18.1818%;\">\n<col style=\"width: 18.1818%;\">\n<col style=\"width: 18.1819%;\">\n<\/colgroup>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">MB\/NC<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">Line number<br \/>\n(e.g. 17)<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">Clause\/ Subclause<br \/>\n(e.g. 3.1)<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">Paragraph\/ Figure\/ Table\/<br \/>\n(e.g. Table 1)<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">Type of comment<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">Comments<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">Proposed change<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">Observations of the secretariat<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">JISC Nobu<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">877<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">6.7.2<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">ed<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\u201cDirective 2014\/55\/EU [1]\u201d reference document is not existed.<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">Remove [1].<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<td class=\"tableblock halign-left valign-top\"><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div class=\"paragraph\">\n<p>\u3053\u306e\u30b7\u30fc\u30c8\u306b\u30b3\u30e1\u30f3\u30c8\u3092\u8a18\u5165\u3057\u3066\u5171\u6709\u3057\u3001\u4f1a\u8b70\u3067\u8a0e\u8b70\u3057\u305f\u7d50\u679c\u3092\u53f3\u5074\u306e\u6c7a\u5b9a\u4e8b\u9805\u306b\u8a18\u5165\u3057\u3066\u8a18\u9332\u3092\u6b8b\u3059\u3068\u3044\u3046\u624b\u9806\u3067\u3059\u3002<br \/>\n\u95a2\u9023\u3059\u308b\u8cc7\u6599\u306f\u3001ISO\u306e\u6587\u66f8\u5171\u6709\u30b5\u30a4\u30c8\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u53c2\u52a0\u8005\u304c\u78ba\u8a8d\u3067\u304d\u308b\u3088\u3046\u306b\u3057\u3066\u3042\u308a\u307e\u3059\u304c\u3001\u3053\u306e\u65b9\u6cd5\u306f\u524d\u4e16\u7d00\u7684\u306a\u624b\u9806\u306a\u306e\u3067\u3001GitHub\u306eProject\u3092\u4f5c\u6210\u6587\u66f8\u3054\u3068\u306b\u4f5c\u6210\u3057\u3066\u3001\u8a0e\u8b70\u5185\u5bb9\u3092issue\u3068\u3057\u3066\u5171\u6709\u3059\u308b\u65b9\u5f0f\u3068\u3057\u307e\u3057\u305f\u3002<br \/>\n\u56fd\u306b\u3088\u3063\u3066\u306f\u3001GitHub\u3078\u306e\u30a2\u30af\u30bb\u30b9\u304c\u3067\u304d\u306a\u3044\u3068\u3053\u308d\u3082\u3042\u308b\u306e\u3067\u3001issue\u306e\u7d4c\u904e\u3092\u5171\u6709\u3059\u308b\u305f\u3081\u306bCSV\u30d5\u30a1\u30a4\u30eb\u3068\u3057\u3066\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u3001\u6bce\u9031\u56de\u89a7\u3059\u308b\u3068\u3044\u3046\u904b\u7528\u3067\u4f1a\u8b70\u3092\u9032\u3081\u308b\u3053\u3068\u3068\u3057\u307e\u3057\u305f\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u3053\u306e\u8a18\u4e8b\u306f\u3001GitHub\u304b\u3089issue\u306e\u30c6\u30ad\u30b9\u30c8\u3068\u95a2\u9023\u60c5\u5831\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u30b3\u30e1\u30f3\u30c8\u30b7\u30fc\u30c8\u3092CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\u3059\u308b\u307e\u3067\u3092\u7d39\u4ecb\u3059\u308b\u3082\u306e\u3067\u3059\u3002<br \/>\n\u4f5c\u696d\u306f\u3001Windows 10\u3068Mac OS\u3067\u5b9f\u884c\u3057\u3066\u3044\u307e\u3059\u3002\u5099\u5fd8\u9332\u3067\u3059\u3002<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_\u524d\u63d0\u74b0\u5883\u306e\u6574\u5099\u3068\u78ba\u8a8d\">1. \u524d\u63d0\u74b0\u5883\u306e\u6574\u5099\u3068\u78ba\u8a8d<\/h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_github\u304b\u3089issue\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3059\u308b\u65b9\u6cd5\">1.1. GitHub\u304b\u3089Issue\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3059\u308b\u65b9\u6cd5<\/h3>\n<div class=\"paragraph\">\n<div class=\"title\">ChatGPT<\/div>\n<p>GitHub\u304b\u3089Issue\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3059\u308b\u306b\u306f\u3001GitHub REST API\u3092\u5229\u7528\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u4ee5\u4e0b\u306b\u57fa\u672c\u7684\u306a\u624b\u9806\u3092\u793a\u3057\u307e\u3059\uff1a<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>\u8a8d\u8a3c\uff1a\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8\u30ea\u30dd\u30b8\u30c8\u30ea\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u304b\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u4ee3\u308f\u308a\u306b\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b\u5834\u5408\u306f\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u8a8d\u8a3c\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u5148\u306b\u8ff0\u3079\u305f\u3088\u3046\u306b\u3001\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u3092\u4f7f\u7528\u3059\u308b\u304b\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066OAuth\u3092\u4f7f\u7528\u3057\u3066\u8a8d\u8a3c\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>\u7b46\u8005\u6ce8\uff1a\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u3092\u4f7f\u7528\u3057\u307e\u3057\u305f\u3002\u305d\u306e\u624b\u9806\u306f\u5f8c\u8ff0\u3002<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>GET\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u4f7f\u7528\u3057\u3066Issue\u3092\u53d6\u5f97\uff1aGitHub API\u306eGET \/repos\/{owner}\/{repo}\/issues\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u7279\u5b9a\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u304b\u3089Issue\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002{owner}\u3092\u6240\u6709\u8005\u306e\u30e6\u30fc\u30b6\u30fc\u540d\u307e\u305f\u306f\u7d44\u7e54\u540d\u306b\u3001{repo}\u3092\u30ea\u30dd\u30b8\u30c8\u30ea\u540d\u306b\u7f6e\u304d\u63db\u3048\u307e\u3059\u3002\u3053\u306eAPI\u547c\u3073\u51fa\u3057\u3067\u306f\u3001\u30b9\u30c6\u30fc\u30c8\uff08\u30aa\u30fc\u30d7\u30f3\u3001\u30af\u30ed\u30fc\u30ba\uff09\u3001\u30e9\u30d9\u30eb\u306a\u3069\u306e\u3055\u307e\u3056\u307e\u306a\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u6307\u5b9a\u3057\u3066Issue\u3092\u30d5\u30a3\u30eb\u30bf\u30ea\u30f3\u30b0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4f8b\u306e\u30ea\u30af\u30a8\u30b9\u30c8\uff1a<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-txt\" data-lang=\"txt\">GET \/repos\/{owner}\/{repo}\/issues<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Issue\u60c5\u5831\u306e\u62bd\u51fa\uff1aAPI\u547c\u3073\u51fa\u3057\u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3092\u89e3\u6790\u3057\u3001JSON\u5f62\u5f0f\u306eIssue\u30ea\u30b9\u30c8\u304c\u542b\u307e\u308c\u308b\u3067\u3057\u3087\u3046\u3002\u5404Issue\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u306f\u3001Issue\u756a\u53f7\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u8aac\u660e\u3001\u30b3\u30e1\u30f3\u30c8\u306a\u3069\u306e\u60c5\u5831\u304c\u542b\u307e\u308c\u307e\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>Issue\u306e\u30c6\u30ad\u30b9\u30c8\u306e\u51e6\u7406\uff1a\u5404Issue\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304b\u3089\u5fc5\u8981\u306a\u60c5\u5831\uff08\u30bf\u30a4\u30c8\u30eb\u3001\u8aac\u660e\u3001\u30b3\u30e1\u30f3\u30c8\u306a\u3069\uff09\u3092\u62bd\u51fa\u3057\u307e\u3059\u3002\u3053\u306e\u30c7\u30fc\u30bf\u3092\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u9069\u5207\u306b\u51e6\u7406\u3057\u3001\u30d5\u30a1\u30a4\u30eb\u306b\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u305f\u308a\u3001\u30c6\u30ad\u30b9\u30c8\u306e\u89e3\u6790\u3092\u884c\u3063\u305f\u308a\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>\u6ce8\u610f\uff1a\u5404Issue\u306b\u3064\u3044\u3066\u3088\u308a\u8a73\u7d30\u306a\u60c5\u5831\u304c\u5fc5\u8981\u306a\u5834\u5408\u306f\u3001GET \/repos\/{owner}\/{repo}\/issues\/{issue_number}\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u306b\u500b\u5225\u306eGET\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u884c\u3046\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002{issue_number}\u306f\u53d6\u5f97\u3057\u305f\u3044\u7279\u5b9a\u306eIssue\u756a\u53f7\u3067\u3059\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4f8b\u306e\u30ea\u30af\u30a8\u30b9\u30c8\uff1a<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>GET \/repos\/{owner}\/{repo}\/issues\/{issue_number}<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>\u30ea\u30dd\u30b8\u30c8\u30ea\u306b\u5927\u91cf\u306eIssue\u304c\u3042\u308b\u5834\u5408\u306f\u3001\u30da\u30fc\u30b8\u30cd\u30fc\u30b7\u30e7\u30f3\u306b\u5bfe\u5fdc\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002GitHub API\u306f\u3001\u30ec\u30b9\u30dd\u30f3\u30b9\u30d8\u30c3\u30c0\u30fc\uff08Link\u30d8\u30c3\u30c0\u30fc\uff09\u3067\u30da\u30fc\u30b8\u30cd\u30fc\u30b7\u30e7\u30f3\u30ea\u30f3\u30af\u3092\u63d0\u4f9b\u3057\u3066\u304a\u308a\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u8907\u6570\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u3067\u5168\u3066\u306eIssue\u3092\u53d6\u5f97\u3059\u308b\u306e\u306b\u5f79\u7acb\u3061\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>\u3053\u308c\u3089\u306e\u624b\u9806\u306b\u5f93\u3046\u3053\u3068\u3067\u3001GitHub REST API\u3092\u4f7f\u7528\u3057\u3066GitHub\u304b\u3089Issue\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<\/div>\n<\/div>\n<div class=\"sect2\">\n<h3 id=\"_api\u30ad\u30fc\u3092\u6307\u5b9a\u3059\u308b\u65b9\u6cd5\">1.2. API\u30ad\u30fc\u3092\u6307\u5b9a\u3059\u308b\u65b9\u6cd5<\/h3>\n<div class=\"paragraph\">\n<div class=\"title\">ChatGPT<\/div>\n<p>GitHub API\u3078\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u3067API\u30ad\u30fc\u3092\u6307\u5b9a\u3059\u308b\u306b\u306f\u3001HTTP\u30ea\u30af\u30a8\u30b9\u30c8\u306e\u30d8\u30c3\u30c0\u30fc\u306b\u305d\u308c\u3092\u542b\u3081\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u4f7f\u7528\u3059\u308b\u8a8d\u8a3c\u30e1\u30bd\u30c3\u30c9\u306b\u3088\u3063\u3066\u3001\u4f7f\u7528\u3059\u308b\u7279\u5b9a\u306e\u30d8\u30c3\u30c0\u30fc\u304c\u7570\u306a\u308a\u307e\u3059\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4ee5\u4e0b\u306f\u3001\u300cBearer Token\u300d\u8a8d\u8a3c\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066API\u30ad\u30fc\u3092\u6307\u5b9a\u3059\u308b\u65b9\u6cd5\u3067\u3059\u3002\u300cAuthorization\u300d\u30d8\u30c3\u30c0\u30fc\u3092\u4f7f\u7528\u3057\u307e\u3059\uff1a<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u3092\u751f\u6210\u3059\u308b\uff1a\u307e\u3060\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u3092\u751f\u6210\u3057\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u3001\u524d\u8ff0\u306e\u624b\u9806\u306b\u5f93\u3063\u3066\u751f\u6210\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u30c8\u30fc\u30af\u30f3\u306b\u306f\u5fc5\u8981\u306a\u30ea\u30bd\u30fc\u30b9\u3078\u306e\u30a2\u30af\u30bb\u30b9\u6a29\u9650\u304c\u3042\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/li>\n<li>\n<p>\u300cAuthorization\u300d\u30d8\u30c3\u30c0\u30fc\u3092\u69cb\u7bc9\u3059\u308b\uff1aHTTP\u30ea\u30af\u30a8\u30b9\u30c8\u306e\u30d8\u30c3\u30c0\u30fc\u306b\u3001\u300cAuthorization\u300d\u30d8\u30c3\u30c0\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u300cBearer YOUR_TOKEN_HERE\u300d\u3068\u3044\u3046\u5024\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002&#8221;YOUR_TOKEN_HERE&#8221;\u306f\u751f\u6210\u3057\u305f\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u306b\u7f6e\u304d\u63db\u3048\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4f8b\u306e\u30d8\u30c3\u30c0\u30fc\uff1a<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-txt\" data-lang=\"txt\">Authorization: Bearer YOUR_TOKEN_HERE<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u884c\u3046\uff1a\u69cb\u7bc9\u3057\u305f\u30d8\u30c3\u30c0\u30fc\u3092API\u30ea\u30af\u30a8\u30b9\u30c8\u306b\u542b\u3081\u3066\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u8a8d\u8a3c\u304a\u3088\u3073\u627f\u8a8d\u3057\u307e\u3059\u3002GitHub API\u306f\u30c8\u30fc\u30af\u30f3\u3092\u691c\u8a3c\u3057\u3001\u5fc5\u8981\u306a\u6a29\u9650\u304c\u3042\u308b\u5834\u5408\u306b\u30a2\u30af\u30bb\u30b9\u3092\u8a31\u53ef\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>\u6ce8\u610f\uff1a\u30d8\u30c3\u30c0\u30fc\u3092\u542b\u3081\u308b\u65b9\u6cd5\u306f\u3001\u4f7f\u7528\u3057\u3066\u3044\u308b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u8a00\u8a9e\u3084HTTP\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30e9\u30a4\u30d6\u30e9\u30ea\u306b\u3088\u3063\u3066\u7570\u306a\u308a\u307e\u3059\u3002\u5177\u4f53\u7684\u306a\u69cb\u6587\u3084\u65b9\u6cd5\u306b\u3064\u3044\u3066\u306f\u3001\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3084\u4f7f\u7528\u3057\u3066\u3044\u308bAPI\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u53c2\u7167\u5148\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u300cAuthorization\u300d\u30d8\u30c3\u30c0\u30fc\u306bAPI\u30ad\u30fc\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067\u3001GitHub API\u3078\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u8a8d\u8a3c\u3057\u3001\u76ee\u7684\u306e\u30ea\u30bd\u30fc\u30b9\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002API\u30ad\u30fc\u3092\u5b89\u5168\u306b\u4fdd\u7ba1\u3057\u3001\u6a29\u9650\u306e\u306a\u3044\u500b\u4eba\u3068\u5171\u6709\u3057\u306a\u3044\u3088\u3046\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/div>\n<\/div>\n<div class=\"sect2\">\n<h3 id=\"_\u8a8d\u8a3c\u306e\u624b\u9806\u306b\u3064\u3044\u3066\u3055\u3089\u306b\u8a73\u7d30\u3092\u63d0\u4f9b\u3057\u3066\u304f\u3060\u3055\u3044\">1.3. \u8a8d\u8a3c\u306e\u624b\u9806\u306b\u3064\u3044\u3066\u3055\u3089\u306b\u8a73\u7d30\u3092\u63d0\u4f9b\u3057\u3066\u304f\u3060\u3055\u3044<\/h3>\n<div class=\"paragraph\">\n<div class=\"title\">ChatGPT<\/div>\n<p>\u3082\u3061\u308d\u3093\u3067\u3059\uff01GitHub API\u3092\u4ecb\u3057\u3066\u30ea\u30dd\u30b8\u30c8\u30ea\u306eIssue\u306b\u30a2\u30af\u30bb\u30b9\u3057\u3001\u8a8d\u8a3c\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a\u6a29\u9650\u3092\u6301\u3064\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u3092\u751f\u6210\u3059\u308b\u305f\u3081\u306e\u3001\u3055\u3089\u306b\u8a73\u7d30\u306a\u624b\u9806\u3092\u4ee5\u4e0b\u306b\u793a\u3057\u307e\u3059\uff1a<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>GitHub\u30a2\u30ab\u30a6\u30f3\u30c8\u306b\u30b5\u30a4\u30f3\u30a4\u30f3\uff1aGitHub\u306e\u30a6\u30a7\u30d6\u30b5\u30a4\u30c8\uff08https:\/\/github.com\uff09\u306b\u30a2\u30af\u30bb\u30b9\u3057\u3001\u8cc7\u683c\u60c5\u5831\u3092\u4f7f\u7528\u3057\u3066\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>\u30a2\u30ab\u30a6\u30f3\u30c8\u8a2d\u5b9a\u306b\u30a2\u30af\u30bb\u30b9\uff1a\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u305f\u3089\u3001\u30da\u30fc\u30b8\u306e\u53f3\u4e0a\u9685\u306b\u3042\u308b\u30d7\u30ed\u30d5\u30a3\u30fc\u30eb\u753b\u50cf\u3092\u30af\u30ea\u30c3\u30af\u3057\u3001\u30c9\u30ed\u30c3\u30d7\u30c0\u30a6\u30f3\u30e1\u30cb\u30e5\u30fc\u304b\u3089\u300cSettings\u300d\u3092\u9078\u629e\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"imageblock\">\n<div class=\"content\">\n<img decoding=\"async\" src=\"https:\/\/www.sambuichi.jp\/wp-content\/uploads\/2023\/07\/230714Fig2.png\" alt=\"230714Fig2\">\n<\/div>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>\u958b\u767a\u8005\u8a2d\u5b9a\u306b\u79fb\u52d5\uff1a\u8a2d\u5b9a\u30da\u30fc\u30b8\u306e\u5de6\u5074\u306e\u30b5\u30a4\u30c9\u30d0\u30fc\u3067\u3001\u30b9\u30af\u30ed\u30fc\u30eb\u3057\u3066\u300cDeveloper settings\u300d\u3092\u30af\u30ea\u30c3\u30af\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"imageblock\">\n<div class=\"content\">\n<img decoding=\"async\" src=\"https:\/\/www.sambuichi.jp\/wp-content\/uploads\/2023\/07\/230714Fig3.png\" alt=\"230714Fig3\">\n<\/div>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>\u65b0\u3057\u3044\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u3092\u751f\u6210\uff1a\u958b\u767a\u8005\u8a2d\u5b9a\u30da\u30fc\u30b8\u3067\u3001\u5229\u7528\u53ef\u80fd\u306a\u30aa\u30d7\u30b7\u30e7\u30f3\u304b\u3089\u300cPersonal access tokens\u300d\u3092\u30af\u30ea\u30c3\u30af\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"imageblock\">\n<div class=\"content\">\n<img decoding=\"async\" src=\"https:\/\/www.sambuichi.jp\/wp-content\/uploads\/2023\/07\/230714Fig4.png\" alt=\"230714Fig4\">\n<\/div>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>\u65b0\u3057\u3044\u30c8\u30fc\u30af\u30f3\u3092\u4f5c\u6210\uff1a\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u30da\u30fc\u30b8\u3067\u3001\u300cGenerate new token\u300d\u30dc\u30bf\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>\u5fc5\u8981\u306a\u60c5\u5831\u3092\u5165\u529b\uff1a\u300cNote\u300d\u30d5\u30a3\u30fc\u30eb\u30c9\u306b\u30c8\u30fc\u30af\u30f3\u306b\u8aac\u660e\u7684\u306a\u540d\u524d\u3092\u4ed8\u3051\u3066\u304f\u3060\u3055\u3044\u3002\u5f8c\u3067\u76ee\u7684\u3092\u7c21\u5358\u306b\u7279\u5b9a\u3067\u304d\u308b\u3088\u3046\u306b\u3057\u307e\u3059\u3002\u307e\u305f\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u30c8\u30fc\u30af\u30f3\u306b\u8ffd\u52a0\u306e\u30b9\u30b3\u30fc\u30d7\u3084\u6a29\u9650\u3092\u8ffd\u52a0\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002Issue\u3078\u306e\u30a2\u30af\u30bb\u30b9\u306b\u306f\u901a\u5e38\u3001\u300crepo\u300d\u30b9\u30b3\u30fc\u30d7\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>\u30c8\u30fc\u30af\u30f3\u3092\u751f\u6210\uff1a\u5fc5\u8981\u306a\u60c5\u5831\u3092\u5165\u529b\u3057\u305f\u5f8c\u3001\u30da\u30fc\u30b8\u306e\u4e00\u756a\u4e0b\u306b\u3042\u308b\u300cGenerate token\u300d\u30dc\u30bf\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>\u751f\u6210\u3055\u308c\u305f\u30c8\u30fc\u30af\u30f3\u3092\u4fdd\u5b58\uff1a\u30dc\u30bf\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068\u3001GitHub\u304c\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u3092\u751f\u6210\u3057\u307e\u3059\u3002\u3053\u306e\u30c8\u30fc\u30af\u30f3\u3092\u30b3\u30d4\u30fc\u3057\u3066\u5b89\u5168\u306a\u5834\u6240\u306b\u4fdd\u5b58\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u30c8\u30fc\u30af\u30f3\u306f\u3082\u3046\u4e00\u5ea6\u8868\u793a\u3055\u308c\u306a\u3044\u305f\u3081\u3001\u6ce8\u610f\u3057\u3066\u4fdd\u5b58\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3053\u306e\u30c8\u30fc\u30af\u30f3\u306fGitHub\u30a2\u30ab\u30a6\u30f3\u30c8\u3078\u306e\u30a2\u30af\u30bb\u30b9\u6a29\u9650\u3092\u63d0\u4f9b\u3059\u308b\u305f\u3081\u3001\u6ce8\u610f\u3057\u3066\u6271\u3044\u3001\u6a29\u9650\u306e\u306a\u3044\u500b\u4eba\u3068\u5171\u6709\u3057\u306a\u3044\u3088\u3046\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/li>\n<li>\n<p>\u30c8\u30fc\u30af\u30f3\u3092\u4f7f\u7528\u3057\u3066\u8a8d\u8a3c\u3059\u308b\uff1a\u30ea\u30dd\u30b8\u30c8\u30ea\u306eIssue\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u305f\u3081\u306e\u6b21\u306eAPI\u30ea\u30af\u30a8\u30b9\u30c8\u3067\u306f\u3001\u751f\u6210\u3057\u305f\u30c8\u30fc\u30af\u30f3\u3092\u300cAuthorization\u300d\u30d8\u30c3\u30c0\u30fc\u3068\u3057\u3066\u542b\u3081\u307e\u3059\u3002\u30d8\u30c3\u30c0\u30fc\u306e\u5024\u306f\u3001&#8221;Bearer YOUR_TOKEN_HERE&#8221;\u306e\u5f62\u5f0f\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>\u3053\u308c\u3089\u306e\u624b\u9806\u306b\u5f93\u3046\u3053\u3068\u3067\u3001GitHub API\u3092\u4ecb\u3057\u3066\u30ea\u30dd\u30b8\u30c8\u30ea\u306eIssue\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a\u6a29\u9650\u3092\u6301\u3064\u500b\u4eba\u30a2\u30af\u30bb\u30b9\u30c8\u30fc\u30af\u30f3\u3092\u751f\u6210\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u30c8\u30fc\u30af\u30f3\u3092\u5b89\u5168\u306b\u4fdd\u7ba1\u3057\u3001\u8a31\u53ef\u3055\u308c\u305f\u76ee\u7684\u306e\u305f\u3081\u306b\u306e\u307f\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u7b46\u8005\u6ce8\uff1a\u3053\u306e\u624b\u9806\u3067\u4f5c\u6210\u3057\u305f\u30c8\u30fc\u30af\u30f3\u306e\u6709\u52b9\u671f\u9650\u306f\u3001\uff11\u304b\u6708\u7a0b\u5ea6\u3067\u3059\u3002<\/p>\n<\/div>\n<\/div>\n<div class=\"sect2\">\n<h3 id=\"_postman\u3092\u4f7f\u7528\u3057\u3066get\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u65b9\u6cd5\">1.4. Postman\u3092\u4f7f\u7528\u3057\u3066GET\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u65b9\u6cd5<\/h3>\n<div class=\"paragraph\">\n<div class=\"title\">ChatGPT<\/div>\n<p>Postman\u3092\u4f7f\u7528\u3057\u3066GET\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u306b\u306f\u3001\u6b21\u306e\u624b\u9806\u306b\u5f93\u3044\u307e\u3059\uff1a<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Postman\u3092\u958b\u304f\uff1a\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u4e0a\u3067Postman\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u8d77\u52d5\u3057\u307e\u3059\u3002Postman\u304c\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u3001\u516c\u5f0f\u306ePostman\u30a6\u30a7\u30d6\u30b5\u30a4\u30c8\uff08https:\/\/www.postman.com\/\uff09\u304b\u3089\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>\u65b0\u3057\u3044\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u4f5c\u6210\u3059\u308b\uff1aPostman\u30a6\u30a3\u30f3\u30c9\u30a6\u306e\u5de6\u4e0a\u9685\u306b\u3042\u308b\u300cNew\u300d\u30dc\u30bf\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u65b0\u3057\u3044\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>\u30ea\u30af\u30a8\u30b9\u30c8\u306e\u8a73\u7d30\u3092\u6307\u5b9a\u3059\u308b\uff1a\u65b0\u3057\u304f\u4f5c\u6210\u3057\u305f\u30ea\u30af\u30a8\u30b9\u30c8\u30bf\u30d6\u3067\u3001\u30ea\u30af\u30a8\u30b9\u30c8URL\u30d5\u30a3\u30fc\u30eb\u30c9\u306bAPI\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u306eURL\u3092\u5165\u529b\u3057\u307e\u3059\u3002\u305f\u3068\u3048\u3070\u3001GitHub\u30ea\u30dd\u30b8\u30c8\u30ea\u304b\u3089Issue\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u306eGET\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u5834\u5408\u3001URL\u306f\u6b21\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\uff1ahttps:\/\/api.github.com\/repos\/{owner}\/{repo}\/issues\u3002{owner}\u306b\u306f\u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u6240\u6709\u8005\u306e\u30e6\u30fc\u30b6\u30fc\u540d\u307e\u305f\u306f\u7d44\u7e54\u540d\u3092\u3001{repo}\u306b\u306f\u30ea\u30dd\u30b8\u30c8\u30ea\u540d\u3092\u7f6e\u304d\u63db\u3048\u307e\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>HTTP\u30e1\u30bd\u30c3\u30c9\u3092\u9078\u629e\u3059\u308b\uff1a\u30ea\u30af\u30a8\u30b9\u30c8\u30bf\u30d6\u3067\u3001\u30ea\u30af\u30a8\u30b9\u30c8URL\u30d5\u30a3\u30fc\u30eb\u30c9\u306e\u6a2a\u306b\u3042\u308b\u30c9\u30ed\u30c3\u30d7\u30c0\u30a6\u30f3\u30e1\u30cb\u30e5\u30fc\u304b\u3089\u300cGET\u300d\u3092\u9078\u629e\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>\u30d8\u30c3\u30c0\u30fc\u3092\u8ffd\u52a0\u3059\u308b\uff08\u30aa\u30d7\u30b7\u30e7\u30f3\uff09\uff1aAPI\u304c\u7279\u5b9a\u306e\u30d8\u30c3\u30c0\u30fc\u3092\u8981\u6c42\u3059\u308b\u5834\u5408\u306f\u3001\u30ea\u30af\u30a8\u30b9\u30c8URL\u30d5\u30a3\u30fc\u30eb\u30c9\u306e\u4e0b\u306b\u3042\u308b\u300cHeaders\u300d\u30bf\u30d6\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u30d8\u30c3\u30c0\u30fc\u3092\u8ffd\u52a0\u3067\u304d\u307e\u3059\u3002\u30d8\u30c3\u30c0\u30fc\u30ad\u30fc\u3068\u5024\u3092\u6307\u5b9a\u3059\u308b\u305f\u3081\u306b\u3001\u300cAdd row\u300d\u30dc\u30bf\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<li>\n<p>\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\uff1a\u30ea\u30af\u30a8\u30b9\u30c8URL\u30d5\u30a3\u30fc\u30eb\u30c9\u306e\u6a2a\u306b\u3042\u308b\u300cSend\u300d\u30dc\u30bf\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u3001GET\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>*\u30ec\u30b9\u30dd\u30f3\u30b9\u3092\u8868\u793a\u3059\u308b\uff1a\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u9001\u4fe1\u3055\u308c\u308b\u3068\u3001Postman\u306f\u753b\u9762\u4e0b\u90e8\u306b\u30ec\u30b9\u30dd\u30f3\u30b9\u3092\u8868\u793a\u3057\u307e\u3059\u3002\u30ec\u30b9\u30dd\u30f3\u30b9\u30dc\u30c7\u30a3\u3001\u30d8\u30c3\u30c0\u30fc\u3001\u305d\u306e\u4ed6\u306e\u8a73\u7d30\u3092\u8868\u793a\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4ee5\u4e0a\u3067\u3059\uff01Postman\u3092\u4f7f\u7528\u3057\u3066GET\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u3053\u3068\u306b\u6210\u529f\u3057\u307e\u3057\u305f\u3002Postman\u306f\u3001\u30d8\u30c3\u30c0\u30fc\u3084\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3001\u8a8d\u8a3c\u306a\u3069\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u306e\u3055\u307e\u3056\u307e\u306a\u5074\u9762\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3057\u3066\u30c6\u30b9\u30c8\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u591a\u76ee\u7684\u306a\u30c4\u30fc\u30eb\u3067\u3059\u3002API\u306e\u30c6\u30b9\u30c8\u3084\u958b\u767a\u306b\u304a\u3044\u3066\u975e\u5e38\u306b\u5f37\u529b\u306a\u30c4\u30fc\u30eb\u3067\u3059\u3002<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_python\u30d7\u30ed\u30b0\u30e9\u30e0\">2. Python\u30d7\u30ed\u30b0\u30e9\u30e0<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Postman\u3067GET\u3092\u30c6\u30b9\u30c8\u3057\u3066API\u3067\u30c6\u30ad\u30b9\u30c8\u304c\u62bd\u51fa\u3067\u304d\u305f\u306e\u3067\u3001\u30d7\u30ed\u30b0\u30e9\u30e0\u4f5c\u6210\u306b\u7740\u624b\u3002<br \/>\nChatGPT\u306b\u8cea\u554f\u3057\u306a\u304c\u3089\u958b\u767a\u3057\u307e\u3057\u305f\u3002\u30da\u30fc\u30b8\u30cd\u30fc\u30b7\u30e7\u30f3\u306b\u5bfe\u5fdc\u3059\u308b\u3068\u3053\u308d\u3068Project\u306estatus\u306e\u53d6\u5f97\u306b\u5de5\u592b\u304c\u5fc5\u8981\u3067\u3057\u305f\u3002Project\u306estatus\u306f\u3001API\u7d4c\u7531\u3067\u306f\u3046\u307e\u304f\u3044\u304b\u305a\u3001\u753b\u9762\u304b\u3089\u30e1\u30cb\u30e5\u30fc\u3067\u30a8\u30ad\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3057\u305f\u3002<br \/>\n\u4f5c\u6210\u3057\u305f\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u6700\u5f8c\u306b\u8a18\u8f09\u3057\u307e\u3057\u305f\u306e\u3067\u53c2\u8003\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u4ee5\u964d\u306eChatGPT\u3068\u306eQ&amp;A\u306f\u3001\u554f\u984c\u3092\u6307\u6458\u3057\u306a\u304c\u3089\u305d\u306e\u90fd\u5ea6\u4fee\u6b63\u3092\u52a0\u3048\u3066\u3044\u3063\u305f\u7d4c\u904e\u3092\u8a18\u9332\u3057\u3066\u3044\u307e\u3059\u3002\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u306e\u4ed5\u65b9\u306f\u3088\u304f\u77e5\u3063\u3066\u3044\u308b\u306e\u3067\u3059\u304c\u3001\u4eba\u306e\u30d7\u30ed\u30b0\u30e9\u30de\u306a\u3089\u5f53\u7136\u3053\u306e\u304f\u3089\u3044\u5e38\u8b58\u3067\u914d\u616e\u3059\u308b\u3060\u308d\u3046\u3068\u3044\u3046\u6a5f\u80fd\u3067\u3082\u660e\u78ba\u306a\u6307\u793a\u304c\u306a\u3044\u3068\u66f8\u3044\u3066\u304f\u308c\u306a\u3044\u306e\u3067\u3001\u9014\u4e2d\u304b\u3089ChatGPT\u306b\u306f\u5b8c\u6210\u5f62\u3092\u671f\u5f85\u3059\u308b\u306e\u3067\u306f\u306a\u304f\u3001\u554f\u984c\u5bfe\u5fdc\u306e\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u78ba\u8a8d\u3057\u306a\u304c\u3089\u3053\u3061\u3089\u306e\u624b\u4f5c\u696d\u3067\u4ed5\u4e0a\u3052\u308b\u3053\u3068\u306b\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<\/div>\n<div class=\"sect2\">\n<h3 id=\"_csv\u30d5\u30a1\u30a4\u30eb\u3067issue\u30ea\u30b9\u30c8\u3092\u51fa\u529b\u3059\u308bpython\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\">2.1. CSV\u30d5\u30a1\u30a4\u30eb\u3067issue\u30ea\u30b9\u30c8\u3092\u51fa\u529b\u3059\u308bPython\u30d7\u30ed\u30b0\u30e9\u30e0\u3092<\/h3>\n<div class=\"paragraph\">\n<p>issue\u306b\u5bfe\u3059\u308bresponce\u3082\u542b\u3081\u3066<br \/>\nissue \u306e\u30ea\u30b9\u30c8\u306f 61\u4ef6.<br \/>\nAPI\u306e\u5b9f\u884c\u306b\u306fBearer\u30c8\u30fc\u30af\u30f3\u304c\u5fc5\u8981<br \/>\n\u65e5\u672c\u8a9e\u3067\u30b3\u30e1\u30f3\u30c8\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<div class=\"title\">ChatGPT<\/div>\n<p>\u4ee5\u4e0b\u306f\u3001GitHub API\u3092\u4f7f\u7528\u3057\u3066\u300161\u4ef6\u306eissue\u30ea\u30b9\u30c8\u3092CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\u3059\u308bPython\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u4f8b\u3067\u3059\u3002Bearer\u30c8\u30fc\u30af\u30f3\u3092\u4f7f\u7528\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u5b9f\u884c\u3059\u308b\u305f\u3081\u3001\u9069\u5207\u306a\u30c8\u30fc\u30af\u30f3\u3092\u30d7\u30ed\u30b0\u30e9\u30e0\u306b\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-python\" data-lang=\"python\">import requests\r\nimport csv\r\n\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u95a2\u6570\r\ndef send_api_request(url, headers):\r\n    response = requests.get(url, headers=headers)\r\n    return response.json()\r\n\r\n# CSV\u30d5\u30a1\u30a4\u30eb\u306bissue\u30ea\u30b9\u30c8\u3092\u51fa\u529b\u3059\u308b\u95a2\u6570\r\ndef export_issues_to_csv(issues):\r\n    with open('issues.csv', 'w', newline='', encoding='utf-8') as csvfile:\r\n        writer = csv.writer(csvfile)\r\n        writer.writerow(['Issue Number', 'Title', 'Description', 'Response'])\r\n        for issue in issues:\r\n            issue_number = issue['number']\r\n            title = issue['title']\r\n            description = issue['body']\r\n            response = issue['comments_url']  # response\u306f\u30b3\u30e1\u30f3\u30c8\u306eURL\u3068\u3057\u3066\u4f7f\u7528\u3057\u307e\u3059\r\n            writer.writerow([issue_number, title, description, response])\r\n\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u305f\u3081\u306e\u30d8\u30c3\u30c0\u30fc\r\nheaders = {\r\n    'Authorization': 'Bearer YOUR_TOKEN_HERE',\r\n    'Accept': 'application\/vnd.github.v3+json'\r\n}\r\n\r\n# API\u30ea\u30af\u30a8\u30b9\u30c8\u3067\u53d6\u5f97\u3059\u308bissue\u306eURL\r\nurl = 'https:\/\/api.github.com\/repos\/{owner}\/{repo}\/issues'\r\n\r\n# API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u3066issue\u30ea\u30b9\u30c8\u3092\u53d6\u5f97\r\nresponse = send_api_request(url, headers)\r\nissues = response\r\n\r\n# issue\u30ea\u30b9\u30c8\u3092CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\r\nexport_issues_to_csv(issues)\r\n\r\n# \u51fa\u529b\u5b8c\u4e86\u30e1\u30c3\u30bb\u30fc\u30b8\r\nprint('CSV\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u51fa\u529b\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002')<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4e0a\u8a18\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u4f7f\u7528\u3059\u308b\u969b\u306b\u306f\u3001\u6b21\u306e\u624b\u9806\u3092\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\uff1a<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Bearer\u30c8\u30fc\u30af\u30f3: YOUR_TOKEN_HERE \u306e\u90e8\u5206\u3092GitHub\u306eBearer\u30c8\u30fc\u30af\u30f3\u306b\u7f6e\u304d\u63db\u3048\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/li>\n<li>\n<p>API\u306eURL: url \u306e {owner} \u3092\u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u6240\u6709\u8005\u306e\u30e6\u30fc\u30b6\u30fc\u540d\u3084\u7d44\u7e54\u540d\u306b\u3001{repo} \u3092\u30ea\u30dd\u30b8\u30c8\u30ea\u540d\u306b\u7f6e\u304d\u63db\u3048\u3066\u304f\u3060\u3055\u3044\u3002<br \/>\n\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u3001\u30d7\u30ed\u30b0\u30e9\u30e0\u306b\u65e5\u672c\u8a9e\u306e\u30b3\u30e1\u30f3\u30c8\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<br \/>\n\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001issue\u306e\u30ea\u30b9\u30c8\u304c issues.csv \u3068\u3044\u3046\u540d\u524d\u306eCSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\u3055\u308c\u307e\u3059\u3002CSV\u30d5\u30a1\u30a4\u30eb\u306b\u306f\u3001issue\u756a\u53f7\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u8aac\u660e\u3001\u304a\u3088\u3073\u30ec\u30b9\u30dd\u30f3\u30b9\uff08\u30b3\u30e1\u30f3\u30c8\u306eURL\uff09\u306e\u60c5\u5831\u304c\u542b\u307e\u308c\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div class=\"sect2\">\n<h3 id=\"_issue\u306b\u5bfe\u3059\u308bresponce\u3082\u542b\u3081\u3066\u304f\u3060\u3055\u3044\">2.2. issue\u306b\u5bfe\u3059\u308bresponce\u3082\u542b\u3081\u3066\u304f\u3060\u3055\u3044<\/h3>\n<div class=\"paragraph\">\n<p>issue \u306e\u30ea\u30b9\u30c8\u306f 61\u4ef6.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<div class=\"title\">ChatGPT<\/div>\n<p>\u4ee5\u4e0b\u306f\u3001GitHub API\u3092\u4f7f\u7528\u3057\u3066\u300161\u4ef6\u306eissue\u30ea\u30b9\u30c8\u3068\u305d\u308c\u306b\u5bfe\u3059\u308bresponse\uff08\u30b3\u30e1\u30f3\u30c8\uff09\u3092\u542b\u3081\u3066\u3001CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\u3059\u308bPython\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u4f8b\u3067\u3059\u3002Bearer\u30c8\u30fc\u30af\u30f3\u3092\u4f7f\u7528\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u5b9f\u884c\u3059\u308b\u305f\u3081\u3001\u9069\u5207\u306a\u30c8\u30fc\u30af\u30f3\u3092\u30d7\u30ed\u30b0\u30e9\u30e0\u306b\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-python\" data-lang=\"python\">import requests\r\nimport csv\r\n\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u95a2\u6570\r\ndef send_api_request(url, headers):\r\n    response = requests.get(url, headers=headers)\r\n    return response.json()\r\n\r\n# issue\u306eresponse\uff08\u30b3\u30e1\u30f3\u30c8\uff09\u3092\u53d6\u5f97\u3059\u308b\u95a2\u6570\r\ndef get_issue_response(url, headers):\r\n    response = send_api_request(url, headers)\r\n    comments = response\r\n    return comments\r\n\r\n# CSV\u30d5\u30a1\u30a4\u30eb\u306bissue\u30ea\u30b9\u30c8\u3068response\u3092\u51fa\u529b\u3059\u308b\u95a2\u6570\r\ndef export_issues_with_response_to_csv(issues):\r\n    with open('issues_with_response.csv', 'w', newline='', encoding='utf-8') as csvfile:\r\n        writer = csv.writer(csvfile)\r\n        writer.writerow(['Issue Number', 'Title', 'Description', 'Response'])\r\n        for issue in issues:\r\n            issue_number = issue['number']\r\n            title = issue['title']\r\n            description = issue['body']\r\n            response_url = issue['comments_url']  # response\u306f\u30b3\u30e1\u30f3\u30c8\u306eURL\u3068\u3057\u3066\u4f7f\u7528\u3057\u307e\u3059\r\n            response = get_issue_response(response_url, headers)\r\n            writer.writerow([issue_number, title, description, response])\r\n\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u305f\u3081\u306e\u30d8\u30c3\u30c0\u30fc\r\nheaders = {\r\n    'Authorization': 'Bearer YOUR_TOKEN_HERE',\r\n    'Accept': 'application\/vnd.github.v3+json'\r\n}\r\n\r\n# API\u30ea\u30af\u30a8\u30b9\u30c8\u3067\u53d6\u5f97\u3059\u308bissue\u306eURL\r\nurl = 'https:\/\/api.github.com\/repos\/{owner}\/{repo}\/issues'\r\n\r\n# API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u3066issue\u30ea\u30b9\u30c8\u3092\u53d6\u5f97\r\nresponse = send_api_request(url, headers)\r\nissues = response\r\n\r\n# issue\u30ea\u30b9\u30c8\u3068response\u3092CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\r\nexport_issues_with_response_to_csv(issues)\r\n\r\n# \u51fa\u529b\u5b8c\u4e86\u30e1\u30c3\u30bb\u30fc\u30b8\r\nprint('CSV\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u51fa\u529b\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002')<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4e0a\u8a18\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u4f7f\u7528\u3059\u308b\u969b\u306b\u306f\u3001\u6b21\u306e\u624b\u9806\u3092\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\uff1a<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Bearer\u30c8\u30fc\u30af\u30f3: YOUR_TOKEN_HERE \u306e\u90e8\u5206\u3092GitHub\u306eBearer\u30c8\u30fc\u30af\u30f3\u306b\u7f6e\u304d\u63db\u3048\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/li>\n<li>\n<p>API\u306eURL: url \u306e {owner} \u3092\u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u6240\u6709\u8005\u306e\u30e6\u30fc\u30b6\u30fc\u540d\u3084\u7d44\u7e54\u540d\u306b\u3001{repo} \u3092\u30ea\u30dd\u30b8\u30c8\u30ea\u540d\u306b\u7f6e\u304d\u63db\u3048\u3066\u304f\u3060\u3055\u3044\u3002<br \/>\n\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u3001\u30d7\u30ed\u30b0\u30e9\u30e0\u306b\u65e5\u672c\u8a9e\u306e\u30b3\u30e1\u30f3\u30c8\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<br \/>\n\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001issue\u306e\u30ea\u30b9\u30c8\u3068\u305d\u308c\u306b\u5bfe\u3059\u308bresponse\uff08\u30b3\u30e1\u30f3\u30c8\uff09\u304c issues_with_response.csv \u3068\u3044\u3046\u540d\u524d\u306eCSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\u3055\u308c\u307e\u3059\u3002CSV\u30d5\u30a1\u30a4\u30eb\u306b\u306f\u3001issue\u756a\u53f7\u3001\u30bf\u30a4\u30c8\u30eb\u3001\u8aac\u660e\u3001\u304a\u3088\u3073response\uff08\u30b3\u30e1\u30f3\u30c8\uff09\u306e\u60c5\u5831\u304c\u542b\u307e\u308c\u307e\u3059\u3002<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div class=\"sect2\">\n<h3 id=\"_url_httpsapi_github_comreposownerrepoissues_\u306f\u9593\u9055\u3044\">2.3. url = &#8216;https:\/\/api.github.com\/repos\/{owner}\/{repo}\/issues&#8217; \u306f\u9593\u9055\u3044<\/h3>\n<div class=\"paragraph\">\n<p>owner = &#8216;somename&#8217;<br \/>\nrepo = &#8216;somerepo&#8217;<br \/>\nurl =f &#8216;https:\/\/api.github.com\/repos\/{owner}\/{repo}\/issues&#8217;<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>token\u306b\u3064\u3044\u3066\u3082\u540c\u69d8\u306b<br \/>\ntoken = &#8216;sometoken&#8217;<br \/>\nf&#8217;Bearer {token}&#8217;<br \/>\n\u3068\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u306a\u305c\u6b21\u306e\u6307\u5b9a\u304c\u3042\u308b\u306e\u3067\u3057\u3087\u3046\u304b<br \/>\n&#8216;Accept&#8217;: &#8216;application\/vnd.github.v3+json&#8217;<\/p>\n<\/div>\n<div class=\"paragraph\">\n<div class=\"title\">ChatGPT<\/div>\n<p>\u7533\u3057\u8a33\u3042\u308a\u307e\u305b\u3093\u3001\u5148\u307b\u3069\u306e\u56de\u7b54\u306b\u304a\u3044\u3066\u3054\u6307\u6458\u306e\u9593\u9055\u3044\u304c\u3042\u308a\u307e\u3059\u3002\u4ee5\u4e0b\u306b\u4fee\u6b63\u7248\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u793a\u3057\u307e\u3059\u3002<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-python\" data-lang=\"python\">import requests\r\nimport csv\r\n\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u95a2\u6570\r\ndef send_api_request(url, headers):\r\n    response = requests.get(url, headers=headers)\r\n    return response.json()\r\n\r\n# issue\u306eresponse\uff08\u30b3\u30e1\u30f3\u30c8\uff09\u3092\u53d6\u5f97\u3059\u308b\u95a2\u6570\r\ndef get_issue_response(url, headers):\r\n    response = send_api_request(url, headers)\r\n    comments = response\r\n    return comments\r\n\r\n# CSV\u30d5\u30a1\u30a4\u30eb\u306bissue\u30ea\u30b9\u30c8\u3068response\u3092\u51fa\u529b\u3059\u308b\u95a2\u6570\r\ndef export_issues_with_response_to_csv(issues):\r\n    with open('issues_with_response.csv', 'w', newline='', encoding='utf-8') as csvfile:\r\n        writer = csv.writer(csvfile)\r\n        writer.writerow(['Issue Number', 'Title', 'Description', 'Response'])\r\n        for issue in issues:\r\n            issue_number = issue['number']\r\n            title = issue['title']\r\n            description = issue['body']\r\n            response_url = issue['comments_url']  # response\u306f\u30b3\u30e1\u30f3\u30c8\u306eURL\u3068\u3057\u3066\u4f7f\u7528\u3057\u307e\u3059\r\n            response = get_issue_response(response_url, headers)\r\n            writer.writerow([issue_number, title, description, response])\r\n\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u305f\u3081\u306e\u30d8\u30c3\u30c0\u30fc\r\nowner = 'somename'\r\nrepo = 'somerepo'\r\nurl = f'https:\/\/api.github.com\/repos\/{owner}\/{repo}\/issues'\r\n\r\ntoken = 'sometoken'\r\nheaders = {\r\n    'Authorization': f'Bearer {token}',\r\n    'Accept': 'application\/vnd.github.v3+json'\r\n}\r\n\r\n# API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u3066issue\u30ea\u30b9\u30c8\u3092\u53d6\u5f97\r\nresponse = send_api_request(url, headers)\r\nissues = response\r\n\r\n# issue\u30ea\u30b9\u30c8\u3068response\u3092CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\r\nexport_issues_with_response_to_csv(issues)\r\n\r\n# \u51fa\u529b\u5b8c\u4e86\u30e1\u30c3\u30bb\u30fc\u30b8\r\nprint('CSV\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u51fa\u529b\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002')<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4fee\u6b63\u70b9\uff1a<br \/>\n* url \u306e\u6307\u5b9a\u3092\u4fee\u6b63\u3057\u3001f\u6587\u5b57\u5217\u3092\u4f7f\u7528\u3057\u3066\u6b63\u3057\u3044URL\u3092\u751f\u6210\u3057\u307e\u3059\u3002<br \/>\n* token \u3092\u6307\u5b9a\u3059\u308b\u7b87\u6240\u3092\u4fee\u6b63\u3057\u3001f\u6587\u5b57\u5217\u3092\u4f7f\u7528\u3057\u3066\u6b63\u3057\u3044\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br \/>\n* Accept \u30d8\u30c3\u30c0\u30fc\u306f\u3001GitHub API\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u6307\u5b9a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002application\/vnd.github.v3+json \u306f\u3001API\u30d0\u30fc\u30b8\u30e7\u30f33\u3092\u6307\u5b9a\u3059\u308b\u305f\u3081\u306e\u30d8\u30c3\u30c0\u30fc\u3067\u3059\u3002<br \/>\n\u4fee\u6b63\u5f8c\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u306f\u3001\u6307\u5b9a\u3055\u308c\u305f\u30ea\u30dd\u30b8\u30c8\u30ea\u306eissue\u30ea\u30b9\u30c8\u3068\u305d\u308c\u306b\u5bfe\u3059\u308bresponse\uff08\u30b3\u30e1\u30f3\u30c8\uff09\u3092\u542b\u3080CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\u3057\u307e\u3059\u3002<\/p>\n<\/div>\n<\/div>\n<div class=\"sect2\">\n<h3 id=\"_issues\u304c\uff13\uff10\u4ef6\u3057\u304b\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\uff16\uff11\u4ef6\u3067\u3059\">2.4. issues\u304c\uff13\uff10\u4ef6\u3057\u304b\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3002\uff16\uff11\u4ef6\u3067\u3059\u3002<\/h3>\n<div class=\"paragraph\">\n<div class=\"title\">ChatGPT<\/div>\n<p>\u7533\u3057\u8a33\u3042\u308a\u307e\u305b\u3093\u3001GitHub API\u306e\u5236\u9650\u306b\u3088\u308a\u3001\u4e00\u5ea6\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u3067\u53d6\u5f97\u3067\u304d\u308bissue\u306e\u4ef6\u6570\u306b\u306f\u5236\u9650\u304c\u3042\u308a\u307e\u3059\u3002\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u306f\u3001API\u304c\u4e00\u5ea6\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u3067\u6700\u592730\u4ef6\u306eissue\u3092\u8fd4\u3057\u307e\u3059\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>61\u4ef6\u306eissue\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u306b\u306f\u3001\u30da\u30fc\u30b8\u30cd\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u8907\u6570\u306eAPI\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u884c\u3044\u3001\u5168\u3066\u306eissue\u3092\u53d6\u5f97\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4ee5\u4e0b\u306b\u4fee\u6b63\u7248\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u793a\u3057\u307e\u3059\u3002\u3053\u306e\u4fee\u6b63\u7248\u3067\u306f\u3001\u30da\u30fc\u30b8\u30cd\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u5168\u3066\u306eissue\u3092\u53d6\u5f97\u3057\u3001CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\u3057\u307e\u3059\u3002<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-python\" data-lang=\"python\">import requests\r\nimport csv\r\n\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u95a2\u6570\r\ndef send_api_request(url, headers, params=None):\r\n    response = requests.get(url, headers=headers, params=params)\r\n    return response.json()\r\n\r\n# issue\u306eresponse\uff08\u30b3\u30e1\u30f3\u30c8\uff09\u3092\u53d6\u5f97\u3059\u308b\u95a2\u6570\r\ndef get_issue_response(url, headers):\r\n    response = send_api_request(url, headers)\r\n    comments = response\r\n    return comments\r\n\r\n# CSV\u30d5\u30a1\u30a4\u30eb\u306bissue\u30ea\u30b9\u30c8\u3068response\u3092\u51fa\u529b\u3059\u308b\u95a2\u6570\r\ndef export_issues_with_response_to_csv(issues):\r\n    with open('issues_with_response.csv', 'w', newline='', encoding='utf-8') as csvfile:\r\n        writer = csv.writer(csvfile)\r\n        writer.writerow(['Issue Number', 'Title', 'Description', 'Response'])\r\n        for issue in issues:\r\n            issue_number = issue['number']\r\n            title = issue['title']\r\n            description = issue['body']\r\n            response_url = issue['comments_url']  # response\u306f\u30b3\u30e1\u30f3\u30c8\u306eURL\u3068\u3057\u3066\u4f7f\u7528\u3057\u307e\u3059\r\n            response = get_issue_response(response_url, headers)\r\n            writer.writerow([issue_number, title, description, response])\r\n\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u305f\u3081\u306e\u30d8\u30c3\u30c0\u30fc\r\nowner = 'somename'\r\nrepo = 'somerepo'\r\nurl = f'https:\/\/api.github.com\/repos\/{owner}\/{repo}\/issues'\r\n\r\ntoken = 'sometoken'\r\nheaders = {\r\n    'Authorization': f'Bearer {token}',\r\n    'Accept': 'application\/vnd.github.v3+json'\r\n}\r\n\r\n# API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u3066\u5168\u3066\u306eissue\u3092\u53d6\u5f97\r\nissues = []\r\npage = 1\r\nper_page = 30\r\nwhile True:\r\n    params = {'page': page, 'per_page': per_page}\r\n    response = send_api_request(url, headers, params)\r\n    if len(response) == 0:\r\n        break\r\n    issues.extend(response)\r\n    page += 1\r\n\r\n# issue\u30ea\u30b9\u30c8\u3068response\u3092CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\r\nexport_issues_with_response_to_csv(issues)\r\n\r\n# \u51fa\u529b\u5b8c\u4e86\u30e1\u30c3\u30bb\u30fc\u30b8\r\nprint('CSV\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u51fa\u529b\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002')<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4fee\u6b63\u5f8c\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3067\u306f\u3001\u30da\u30fc\u30b8\u30cd\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3066\u5168\u3066\u306eissue\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\u30ea\u30af\u30a8\u30b9\u30c8\u3054\u3068\u306b30\u4ef6\u305a\u3064\u53d6\u5f97\u3057\u3001\u53d6\u5f97\u3057\u305fissue\u3092\u30ea\u30b9\u30c8\u306b\u8ffd\u52a0\u3057\u3066\u3044\u304d\u307e\u3059\u3002\u53d6\u5f97\u3067\u304d\u308bissue\u304c\u306a\u304f\u306a\u308b\u307e\u3067\u3053\u306e\u51e6\u7406\u3092\u7e70\u308a\u8fd4\u3057\u3001\u6700\u7d42\u7684\u306aissue\u30ea\u30b9\u30c8\u3092CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\u3057\u307e\u3059\u3002<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_\u4f7f\u7528\u4e2d\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\">3. \u4f7f\u7528\u4e2d\u306e\u30d7\u30ed\u30b0\u30e9\u30e0<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>TSV\u30d5\u30a1\u30a4\u30eb\u3067\u6307\u5b9a\u3057\u305f\u6b21\u306e\u30d5\u30a1\u30a4\u30eb\u306f\u3001\u753b\u9762\u304b\u3089\u30a8\u30ad\u30b9\u30dd\u30fc\u30c8\u3057\u305fTSV\u30d5\u30a1\u30a4\u30eb\u3067\u3059\u3002<br \/>\nstatus_file1 = &#8216;Issues\/SG1 Report Part 1 &#8211; View 1.tsv&#8217;<br \/>\nstatus_file2 = &#8216;Issues\/SG1 Report Part 2 &#8211; View 1.tsv&#8217;<\/p>\n<\/div>\n<div class=\"imageblock\">\n<div class=\"content\">\n<img decoding=\"async\" src=\"https:\/\/www.sambuichi.jp\/wp-content\/uploads\/2023\/07\/230714Fig1.png\" alt=\"230714Fig1\">\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-python\" data-lang=\"python\">import requests\r\nimport csv\r\nimport re\r\nimport json\r\n\r\nuserDict = {\r\n    'GitHub ID1':'\u62c5\u5f53\u8005\u540d1',\r\n    'GitHub ID2':'\u62c5\u5f53\u8005\u540d2'\r\n}\r\n# Project\u30c7\u30fc\u30bf\u521d\u671f\u5316\r\nstatus_data = []\r\nstatus_dict = {}\r\nproject_data = []\r\nproject_dict = {}\r\n# TSV\u30d5\u30a1\u30a4\u30eb\u6307\u5b9a\r\nstatus_file1 = 'Issues\/SG1 Report Part 1 - View 1.tsv'\r\nstatus_file2 = 'Issues\/SG1 Report Part 2 - View 1.tsv'\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u305f\u3081\u306e\u30d8\u30c3\u30c0\u30fc\r\nowner = \"\u6240\u6709\u8005\"\r\nrepo = \"\u30ec\u30dd\u30b8\u30c8\u30ea\u30fc\"\r\nurl = f'https:\/\/api.github.com\/repos\/{owner}\/{repo}\/issues'\r\ntoken = \"\u30c8\u30fc\u30af\u30f3\u30ad\u30fc\"\r\nheaders = {\r\n    'Authorization': f'Bearer {token}',\r\n    'Accept': 'application\/vnd.github.v3+json'\r\n}\r\n# Bearer\u30c8\u30fc\u30af\u30f3\u3092\u6307\u5b9a\u3057\u3066API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3059\u308b\u95a2\u6570\r\ndef send_api_request(url, headers, params=None):\r\n    response = requests.get(url, headers=headers, params=params)\r\n    return response.json()\r\n# API\u30ea\u30af\u30a8\u30b9\u30c8\u3067\u53d6\u5f97\u3057\u305fresponse\u3067\u6307\u5b9a\u3055\u308c\u305furl\u306e\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3059\u308b\u95a2\u6570\r\ndef get_response_data(url, headers):\r\n    response = send_api_request(url, headers)\r\n    return response\r\ndef export_issues_to_csv(issues):\r\n    with open(csv_file_path, 'w', newline='', encoding='utf-8-sig') as csvfile:\r\n        writer = csv.writer(csvfile)\r\n        writer.writerow([\"Issue Number\", \"#\", \"Status\", \"MB\", \"Clause\", \"Comment\", \"Title\", \"Body\", \"User\", \"URL\"])\r\n        for issue in issues:\r\n            issue_number = issue[\"number\"]\r\n            title = issue[\"title\"]\r\n            body = issue[\"body\"]\r\n            url = issue[\"html_url\"]\r\n            userid = issue[\"user\"][\"login\"]\r\n            user = userDict[userid]\r\n            if \"labels\" in issue:\r\n                comment_type = ''\r\n                member_body = 'None'\r\n                clause = ''\r\n                for label in issue[\"labels\"]:\r\n                    name = label[\"name\"]\r\n                    description = label[\"description\"]\r\n                    if name in ['te', 'ed', 'ge']:\r\n                        comment_type = name\r\n                    elif name.startswith(\"MB\"):\r\n                        member_body = name[2:]\r\n                    else:\r\n                        clause = f'{name} \/ {description}'\r\n            project_status = ''\r\n            if url in status_dict:\r\n                project_status = status_dict[url]\r\n            # CSV\u30d5\u30a1\u30a4\u30eb\u306bissue\u30c7\u30fc\u30bf\u51fa\u529b\r\n            i = 0\r\n            writer.writerow([issue_number, i, project_status, member_body, clause, comment_type, title, body, user, url])\r\n            if 'comments_url' in issue:\r\n                comments_url = issue['comments_url']  # comments_url\u306f\u30b3\u30e1\u30f3\u30c8\u306eURL\u3068\u3057\u3066\u4f7f\u7528\u3057\u307e\u3059\r\n                comments = get_response_data(comments_url, headers)\r\n                for comment in comments:\r\n                    body = comment[\"body\"]\r\n                    if body:\r\n                        url = comment[\"html_url\"]\r\n                        userid = comment[\"user\"][\"login\"]\r\n                        user = userDict[userid]\r\n                        # CSV\u30d5\u30a1\u30a4\u30eb\u306bcomments\u30c7\u30fc\u30bf\u51fa\u529b\r\n                        i += 1\r\n                        writer.writerow([issue_number, i, '', '', '', '', '', body, user, url])\r\n# API\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u3066\u5168\u3066\u306eissue\u3092\u53d6\u5f97\r\nissues = []\r\npage = 1\r\nper_page = 30\r\nwhile True:\r\n    params = {'page': page, 'per_page': per_page}\r\n    response = send_api_request(url, headers, params)\r\n    if len(response) == 0:\r\n        break\r\n    issues.extend(response)\r\n    page += 1\r\n# TSV\u30d5\u30a1\u30a4\u30eb\u8aad\u307f\u8fbc\u307f\r\nprint(\"TSV\u30d5\u30a1\u30a4\u30eb\u8aad\u307f\u8fbc\u307f\",status_file1)\r\nwith open(status_file1, 'r', encoding=\"utf-8-sig\") as file:\r\n    reader = csv.reader(file, delimiter='\\t')\r\n    row_headers = next(reader)  # Skip the header row\r\n    for row in reader:\r\n        for i in range(len(row)):\r\n            row[i].replace('\\t',' ')\r\n        status_data.append(dict(zip(row_headers, row)))\r\nprint(\"TSV\u30d5\u30a1\u30a4\u30eb\u8aad\u307f\u8fbc\u307f\",status_file2)\r\nwith open(status_file2, 'r', encoding=\"utf-8-sig\") as file:\r\n    reader = csv.reader(file, delimiter='\\t')\r\n    row_headers = next(reader)  # Skip the header row\r\n    for row in reader:\r\n        for i in range(len(row)):\r\n            row[i].replace('\\t',' ')\r\n        status_data.append(dict(zip(row_headers, row)))\r\nfor data in status_data:\r\n    url = data['URL']\r\n    status_dict[url] = data['Status']\r\n# CSV\u30d5\u30a1\u30a4\u30eb\u306bissue\u30ea\u30b9\u30c8\u3068response\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30fc\u30bf\u3001\u62c5\u5f53\u8005\u3092\u51fa\u529b\u3059\u308b\u95a2\u6570\r\ncsv_file_path = \"Issues\/issues_with_responses.csv\"\r\nprint(\"CSV\u30d5\u30a1\u30a4\u30eb\u51fa\u529b\",csv_file_path)\r\n# issue\u30ea\u30b9\u30c8\u3068response\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30fc\u30bf\u3001\u62c5\u5f53\u8005\u3092CSV\u30d5\u30a1\u30a4\u30eb\u306b\u51fa\u529b\r\nexport_issues_to_csv(issues)\r\n# \u51fa\u529b\u5b8c\u4e86\u30e1\u30c3\u30bb\u30fc\u30b8\r\nprint('CSV\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u51fa\u529b\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002',csv_file_path)<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"footer\">\n<div id=\"footer-text\">\nLast updated 2023-07-14 09:24:13 +0900\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Views: 347 GitHub issues\u304b\u3089\u30c6\u30ad\u30b9\u30c8\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066CSV\u30d5\u30a1\u30a4\u30eb\u51fa\u529b Table of Contents 1. \u524d\u63d0\u74b0\u5883\u306e\u6574\u5099\u3068\u78ba\u8a8d 1.1. GitHub\u304b\u3089Issue\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3059\u308b\u65b9 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":10472,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[71,69,30],"tags":[],"_links":{"self":[{"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=\/wp\/v2\/posts\/10471"}],"collection":[{"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=10471"}],"version-history":[{"count":5,"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=\/wp\/v2\/posts\/10471\/revisions"}],"predecessor-version":[{"id":10487,"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=\/wp\/v2\/posts\/10471\/revisions\/10487"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=\/wp\/v2\/media\/10472"}],"wp:attachment":[{"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=10471"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=10471"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sambuichi.jp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=10471"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}