{
  "metadata": {
    "title": "\u7f51\u7edc\u722c\u866b\u6280\u672f\uff08Web Scraping & Data Acquisition for AI\uff09",
    "description": "\u9762\u5411\u9ad8\u804c\u4e13\u79d1\u4eba\u5de5\u667a\u80fd\u6280\u672f\u5e94\u7528\u4e13\u4e1a\u7684\u300a\u7f51\u7edc\u722c\u866b\u6280\u672f\u300b240\u6982\u5ff5\u4f9d\u8d56\u56fe\u8c31\uff08DAG\uff09\uff0c\u6db5\u76d6HTTP\u534f\u8bae\u3001\u9759\u6001\u89e3\u6790\u3001API\u9006\u5411\u3001Playwright\u52a8\u6001\u6e32\u67d3\u3001\u53cd\u722c\u5bf9\u6297\u3001\u5f02\u6b65\u5e76\u53d1\u3001\u591a\u6e90\u5b58\u50a8\u3001Scrapy\u6846\u67b6\u4e0e\u5927\u6a21\u578bAI\u667a\u80fd\u722c\u866b\u3002",
    "creator": "AI\u6559\u6750\u7f16\u5199\u7ec4",
    "date": "2026-10-20",
    "version": "1.0",
    "format": "Learning Graph JSON v1.0",
    "schema": "https://raw.githubusercontent.com/dmccreary/learning-graphs/refs/heads/main/src/schema/learning-graph-schema.json",
    "license": "CC BY-NC-SA 4.0 DEED"
  },
  "groups": {
    "FOUND": {
      "classifierName": "\u722c\u866b\u5bfc\u8bba\u4e0e\u5408\u89c4\u57fa\u77f3",
      "color": "SteelBlue",
      "font": {
        "color": "white"
      }
    },
    "HTTP": {
      "classifierName": "Web\u524d\u7aef\u4e0eHTTP\u534f\u8bae",
      "color": "DodgerBlue",
      "font": {
        "color": "white"
      }
    },
    "REQ": {
      "classifierName": "Python\u7f51\u7edc\u8bf7\u6c42\u7f16\u7a0b",
      "color": "DarkGreen",
      "font": {
        "color": "white"
      }
    },
    "PARSE": {
      "classifierName": "\u9759\u6001\u7f51\u9875\u89e3\u6790\u4e0e\u6b63\u5219",
      "color": "LimeGreen",
      "font": {
        "color": "black"
      }
    },
    "API": {
      "classifierName": "\u5f02\u6b65\u63a5\u53e3\u4e0eAPI\u91c7\u96c6",
      "color": "Gold",
      "font": {
        "color": "black"
      }
    },
    "DYN": {
      "classifierName": "\u52a8\u6001\u6e32\u67d3\u4e0e\u6d4f\u89c8\u5668\u81ea\u52a8\u5316",
      "color": "DarkGoldenrod",
      "font": {
        "color": "white"
      }
    },
    "ANTI": {
      "classifierName": "\u53cd\u722c\u866b\u673a\u5236\u4e0e\u5bf9\u6297\u7b56\u7565",
      "color": "Crimson",
      "font": {
        "color": "white"
      }
    },
    "ASYNC": {
      "classifierName": "\u9ad8\u5e76\u53d1\u4e0e\u5f02\u6b65\u534f\u7a0b\u722c\u866b",
      "color": "MediumPurple",
      "font": {
        "color": "white"
      }
    },
    "STORE": {
      "classifierName": "\u6570\u636e\u6e05\u6d17\u4e0e\u591a\u6e90\u5b58\u50a8",
      "color": "Teal",
      "font": {
        "color": "white"
      }
    },
    "SCRP": {
      "classifierName": "Scrapy\u5de5\u4e1a\u7ea7\u6846\u67b6",
      "color": "Indigo",
      "font": {
        "color": "white"
      }
    },
    "AICRP": {
      "classifierName": "AI\u667a\u80fd\u722c\u866b\u4e0e\u6570\u636e\u96c6\u6784\u5efa",
      "color": "Orange",
      "font": {
        "color": "black"
      }
    },
    "PROJ": {
      "classifierName": "\u7efc\u5408\u5de5\u7a0b\u5b9e\u8bad\u4e0e\u8fd0\u7ef4\u90e8\u7f72",
      "color": "DeepPink",
      "font": {
        "color": "white"
      }
    }
  },
  "nodes": [
    {
      "id": 1,
      "label": "Python\u7f16\u7a0b\u57fa\u7840",
      "group": "FOUND",
      "shape": "box",
      "cis": 10664
    },
    {
      "id": 2,
      "label": "\u8ba1\u7b97\u673a\u7f51\u7edc\u57fa\u7840",
      "group": "FOUND",
      "shape": "box",
      "cis": 21624
    },
    {
      "id": 3,
      "label": "Web\u6d4f\u89c8\u5668\u57fa\u7840",
      "group": "FOUND",
      "shape": "box",
      "cis": 12017
    },
    {
      "id": 4,
      "label": "HTML\u6587\u6863\u7ed3\u6784\u57fa\u7840",
      "group": "FOUND",
      "shape": "box",
      "cis": 8902
    },
    {
      "id": 5,
      "label": "\u6570\u636e\u7ed3\u6784\u4e0e\u96c6\u5408\u57fa\u7840",
      "group": "FOUND",
      "shape": "box",
      "cis": 2641
    },
    {
      "id": 6,
      "label": "\u6587\u4ef6\u7cfb\u7edf\u4e0eIO\u57fa\u7840",
      "group": "FOUND",
      "shape": "box",
      "cis": 53
    },
    {
      "id": 7,
      "label": "\u6570\u636e\u5408\u89c4\u4e0e\u4f26\u7406\u610f\u8bc6",
      "group": "FOUND",
      "shape": "box",
      "cis": 195
    },
    {
      "id": 8,
      "label": "\u4e07\u7ef4\u7f51\u4e0e\u8d85\u6587\u672c\u4f20\u8f93",
      "group": "FOUND",
      "cis": 10924
    },
    {
      "id": 9,
      "label": "\u7f51\u7edc\u722c\u866b\u5b9a\u4e49\u4e0e\u6838\u5fc3\u4ef7\u503c",
      "group": "FOUND",
      "cis": 3599
    },
    {
      "id": 10,
      "label": "\u901a\u7528\u641c\u7d22\u5f15\u64ce\u722c\u866b",
      "group": "FOUND",
      "cis": 1
    },
    {
      "id": 11,
      "label": "\u805a\u7126\u4e3b\u9898\u7f51\u7edc\u722c\u866b",
      "group": "FOUND",
      "cis": 10
    },
    {
      "id": 12,
      "label": "\u589e\u91cf\u5f0f\u66f4\u65b0\u722c\u866b",
      "group": "FOUND",
      "cis": 8
    },
    {
      "id": 13,
      "label": "\u6df1\u5c42\u7f51\u9875\u4e0e\u6697\u7f51\u6570\u636e\u6982\u5ff5",
      "group": "FOUND",
      "cis": 1
    },
    {
      "id": 14,
      "label": "\u7f51\u7edc\u722c\u866b\u6807\u51c6\u5de5\u4f5c\u6d41",
      "group": "FOUND",
      "cis": 3551
    },
    {
      "id": 15,
      "label": "URL\u79cd\u5b50\u961f\u5217\u4e0e\u5f85\u6293\u53d6\u6c60",
      "group": "FOUND",
      "cis": 22
    },
    {
      "id": 16,
      "label": "\u7f51\u9875\u6293\u53d6\u5e7f\u5ea6\u4f18\u5148\u7b56\u7565",
      "group": "FOUND",
      "cis": 4
    },
    {
      "id": 17,
      "label": "\u7f51\u9875\u6293\u53d6\u6df1\u5ea6\u4f18\u5148\u7b56\u7565",
      "group": "FOUND",
      "cis": 1
    },
    {
      "id": 18,
      "label": "Robots\u534f\u8bae\u4e0e\u8bed\u6cd5\u89c4\u8303",
      "group": "FOUND",
      "cis": 163
    },
    {
      "id": 19,
      "label": "Sitemap\u7f51\u7ad9\u5730\u56fe\u89e3\u6790",
      "group": "FOUND",
      "cis": 1
    },
    {
      "id": 20,
      "label": "\u6570\u636e\u5b89\u5168\u6cd5\u4e0e\u4e2a\u4eba\u4fe1\u606f\u4fdd\u62a4",
      "group": "FOUND",
      "cis": 31
    },
    {
      "id": 21,
      "label": "URI\u4e0eURL\u8bed\u6cd5\u7ed3\u6784\u5256\u6790",
      "group": "HTTP",
      "cis": 3820
    },
    {
      "id": 22,
      "label": "URL\u767e\u5206\u53f7\u7f16\u7801\u4e0e\u89e3\u7801",
      "group": "HTTP",
      "cis": 366
    },
    {
      "id": 23,
      "label": "DNS\u57df\u540d\u89e3\u6790\u6d41\u7a0b",
      "group": "HTTP",
      "cis": 3440
    },
    {
      "id": 24,
      "label": "TCP\u4e09\u6b21\u63e1\u624b\u4e0e\u8fde\u63a5\u5efa\u7acb",
      "group": "HTTP",
      "cis": 3439
    },
    {
      "id": 25,
      "label": "TLS\u52a0\u5bc6\u63e1\u624b\u4e0eHTTPS\u539f\u7406",
      "group": "HTTP",
      "cis": 13
    },
    {
      "id": 26,
      "label": "HTTP\u8bf7\u6c42\u4e0e\u54cd\u5e94\u6a21\u578b",
      "group": "HTTP",
      "cis": 3340
    },
    {
      "id": 27,
      "label": "HTTP\u8bf7\u6c42\u65b9\u6cd5GET\u4e0ePOST",
      "group": "HTTP",
      "cis": 452
    },
    {
      "id": 28,
      "label": "HTTP\u72b6\u6001\u7801\u5206\u7c7b\u4f53\u7cfb",
      "group": "HTTP",
      "cis": 325
    },
    {
      "id": 29,
      "label": "\u5e38\u89c1\u6210\u529f\u4e0e\u91cd\u5b9a\u5411\u72b6\u6001\u7801",
      "group": "HTTP",
      "cis": 2
    },
    {
      "id": 30,
      "label": "\u5ba2\u6237\u7aef\u4e0e\u670d\u52a1\u7aef\u9519\u8bef\u72b6\u6001\u7801",
      "group": "HTTP",
      "cis": 167
    },
    {
      "id": 31,
      "label": "HTTP\u8bf7\u6c42\u5934Headers\u7ed3\u6784",
      "group": "HTTP",
      "cis": 711
    },
    {
      "id": 32,
      "label": "User-Agent\u5ba2\u6237\u7aef\u6807\u8bc6",
      "group": "HTTP",
      "cis": 191
    },
    {
      "id": 33,
      "label": "Referer\u9632\u76d7\u94fe\u4e0e\u6765\u6e90\u6821\u9a8c",
      "group": "HTTP",
      "cis": 187
    },
    {
      "id": 34,
      "label": "Content-Type\u5a92\u4f53\u7c7b\u578b\u58f0\u660e",
      "group": "HTTP",
      "cis": 131
    },
    {
      "id": 35,
      "label": "Accept\u4e0e\u5185\u5bb9\u534f\u5546\u673a\u5236",
      "group": "HTTP",
      "cis": 1
    },
    {
      "id": 36,
      "label": "HTTP\u54cd\u5e94\u5934\u4e0eGzip\u538b\u7f29",
      "group": "HTTP",
      "cis": 3
    },
    {
      "id": 37,
      "label": "HTTP\u65e0\u72b6\u6001\u7279\u6027\u4e0eCookie\u539f\u7406",
      "group": "HTTP",
      "cis": 174
    },
    {
      "id": 38,
      "label": "\u670d\u52a1\u7aefSession\u4f1a\u8bdd\u8ddf\u8e2a",
      "group": "HTTP",
      "cis": 58
    },
    {
      "id": 39,
      "label": "Token\u4e0eJWT\u8eab\u4efd\u8ba4\u8bc1\u673a\u5236",
      "group": "HTTP",
      "cis": 1
    },
    {
      "id": 40,
      "label": "HTTP/1.1\u6301\u4e45\u8fde\u63a5\u4e0eHTTP/2\u591a\u8def\u590d\u7528",
      "group": "HTTP",
      "cis": 8
    },
    {
      "id": 41,
      "label": "Chrome\u5f00\u53d1\u8005\u5de5\u5177DevTools\u57fa\u7840",
      "group": "HTTP",
      "cis": 308
    },
    {
      "id": 42,
      "label": "Network\u9762\u677f\u6293\u5305\u4e0eHAR\u5bfc\u51fa",
      "group": "HTTP",
      "cis": 192
    },
    {
      "id": 43,
      "label": "Python\u865a\u62df\u73af\u5883\u4e0e\u5305\u7ba1\u7406",
      "group": "REQ",
      "cis": 1563
    },
    {
      "id": 44,
      "label": "urllib.request\u5e95\u5c42\u8bf7\u6c42\u6a21\u5757",
      "group": "REQ",
      "cis": 897
    },
    {
      "id": 45,
      "label": "urllib.parse\u53c2\u6570\u6784\u9020\u4e0e\u8f6c\u6362",
      "group": "REQ",
      "cis": 362
    },
    {
      "id": 46,
      "label": "Requests\u5e93\u5b89\u88c5\u4e0e\u6838\u5fc3\u67b6\u6784",
      "group": "REQ",
      "cis": 534
    },
    {
      "id": 47,
      "label": "\u6784\u9020GET\u8bf7\u6c42\u4e0eParams\u67e5\u8be2\u53c2\u6570",
      "group": "REQ",
      "cis": 348
    },
    {
      "id": 48,
      "label": "Response\u54cd\u5e94\u5bf9\u8c61\u5c5e\u6027\u89e3\u6790",
      "group": "REQ",
      "cis": 155
    },
    {
      "id": 49,
      "label": "\u54cd\u5e94\u6587\u672c\u7f16\u7801\u81ea\u52a8\u8bc6\u522b\u4e0e\u4fee\u6b63",
      "group": "REQ",
      "cis": 77
    },
    {
      "id": 50,
      "label": "\u5b9a\u5236\u8bf7\u6c42\u5934Headers\u4f2a\u88c5\u6d4f\u89c8\u5668",
      "group": "REQ",
      "cis": 186
    },
    {
      "id": 51,
      "label": "\u6784\u9020POST\u8868\u5355\u8bf7\u6c42data\u8f7d\u8377",
      "group": "REQ",
      "cis": 30
    },
    {
      "id": 52,
      "label": "\u6784\u9020POST\u63a5\u53e3JSON\u8bf7\u6c42\u8f7d\u8377",
      "group": "REQ",
      "cis": 28
    },
    {
      "id": 53,
      "label": "Multipart\u591a\u90e8\u5206\u6587\u4ef6\u4e0a\u4f20\u8bf7\u6c42",
      "group": "REQ",
      "cis": 1
    },
    {
      "id": 54,
      "label": "\u4e8c\u8fdb\u5236\u6d41\u6a21\u5f0f\u4e0b\u8f7d\u56fe\u7247\u4e0e\u97f3\u89c6\u9891",
      "group": "REQ",
      "cis": 14
    },
    {
      "id": 55,
      "label": "Requests\u4e2dCookie\u83b7\u53d6\u4e0e\u5b57\u5178\u6ce8\u5165",
      "group": "REQ",
      "cis": 57
    },
    {
      "id": 56,
      "label": "requests.Session\u8de8\u8bf7\u6c42\u4f1a\u8bdd\u4fdd\u6301",
      "group": "REQ",
      "cis": 56
    },
    {
      "id": 57,
      "label": "\u8bf7\u6c42\u91cd\u5b9a\u5411\u8ddf\u968f\u4e0e\u7981\u6b62allow_redirects",
      "group": "REQ",
      "cis": 1
    },
    {
      "id": 58,
      "label": "\u8fde\u63a5\u8d85\u65f6\u4e0e\u8bfb\u53d6\u8d85\u65f6Timeout\u63a7\u5236",
      "group": "REQ",
      "cis": 76
    },
    {
      "id": 59,
      "label": "SSL\u8bc1\u4e66\u6821\u9a8c\u4e0e\u8b66\u544a\u5c4f\u853dverify",
      "group": "REQ",
      "cis": 1
    },
    {
      "id": 60,
      "label": "HTTP\u4e0eSOCKS5\u4ee3\u7406Proxies\u914d\u7f6e",
      "group": "REQ",
      "cis": 7
    },
    {
      "id": 61,
      "label": "Requests\u5f02\u5e38\u7ee7\u627f\u4f53\u7cfb\u4e0e\u6355\u83b7",
      "group": "REQ",
      "cis": 13
    },
    {
      "id": 62,
      "label": "Tenacity\u5e93\u4e0e\u6307\u6570\u9000\u907f\u81ea\u52a8\u91cd\u8bd5",
      "group": "REQ",
      "cis": 5
    },
    {
      "id": 63,
      "label": "HTTPX\u65b0\u4e00\u4ee3\u5ba2\u6237\u7aef\u4e0eHTTP/2\u8bf7\u6c42",
      "group": "REQ",
      "cis": 5
    },
    {
      "id": 64,
      "label": "cURL\u547d\u4ee4\u8f6cPython\u722c\u866b\u4ee3\u7801\u6280\u5de7",
      "group": "REQ",
      "cis": 1
    },
    {
      "id": 65,
      "label": "\u7ed3\u6784\u5316\u4e0e\u975e\u7ed3\u6784\u5316\u7f51\u9875\u6570\u636e\u7279\u5f81",
      "group": "PARSE",
      "cis": 3351
    },
    {
      "id": 66,
      "label": "HTML5\u8bed\u4e49\u5316\u6807\u7b7e\u4e0e\u5217\u8868\u8868\u683c",
      "group": "PARSE",
      "cis": 2965
    },
    {
      "id": 67,
      "label": "DOM\u6587\u6863\u5bf9\u8c61\u6a21\u578b\u6811\u5f62\u62d3\u6251",
      "group": "PARSE",
      "cis": 2507
    },
    {
      "id": 68,
      "label": "DOM\u8282\u70b9\u7236\u5b50\u5144\u5f1f\u5c42\u7ea7\u5173\u7cfb",
      "group": "PARSE",
      "cis": 1263
    },
    {
      "id": 69,
      "label": "\u7f51\u9875\u5b57\u7b26\u96c6UTF-8\u4e0eGBK\u4e71\u7801\u6cbb\u7406",
      "group": "PARSE",
      "cis": 76
    },
    {
      "id": 70,
      "label": "\u6b63\u5219\u8868\u8fbe\u5f0f\u8bed\u6cd5\u5143\u5b57\u7b26\u4e0e\u91cf\u8bcd",
      "group": "PARSE",
      "cis": 111
    },
    {
      "id": 71,
      "label": "\u6b63\u5219\u8868\u8fbe\u5f0f\u5b57\u7b26\u96c6\u4e0e\u5206\u7ec4\u6355\u83b7",
      "group": "PARSE",
      "cis": 110
    },
    {
      "id": 72,
      "label": "\u8d2a\u5a6a\u5339\u914d\u4e0e\u975e\u8d2a\u5a6a\u5339\u914d\u6a21\u5f0f",
      "group": "PARSE",
      "cis": 109
    },
    {
      "id": 73,
      "label": "Python\u5185\u7f6ere\u6a21\u5757\u6838\u5fc3\u51fd\u6570",
      "group": "PARSE",
      "cis": 108
    },
    {
      "id": 74,
      "label": "BeautifulSoup4\u5e93\u4e0e\u89e3\u6790\u5668\u9009\u578b",
      "group": "PARSE",
      "cis": 503
    },
    {
      "id": 75,
      "label": "BS4\u8282\u70b9\u5bfc\u822a\u4e0efind_all\u68c0\u7d22",
      "group": "PARSE",
      "cis": 502
    },
    {
      "id": 76,
      "label": "CSS\u9009\u62e9\u5668\u8bed\u6cd5\u89c4\u5219\u5168\u89e3",
      "group": "PARSE",
      "cis": 417
    },
    {
      "id": 77,
      "label": "BS4\u4e2dselect\u65b9\u6cd5\u4e0eCSS\u7ec4\u5408\u9009\u62e9",
      "group": "PARSE",
      "cis": 261
    },
    {
      "id": 78,
      "label": "DOM\u8282\u70b9\u6587\u672c\u5265\u79bb\u4e0e\u5c5e\u6027\u63d0\u53d6",
      "group": "PARSE",
      "cis": 240
    },
    {
      "id": 79,
      "label": "XPath\u8def\u5f84\u8868\u8fbe\u5f0f\u6838\u5fc3\u8bed\u6cd5",
      "group": "PARSE",
      "cis": 296
    },
    {
      "id": 80,
      "label": "XPath\u8c13\u8bed\u6761\u4ef6\u8fc7\u6ee4\u4e0e\u6a21\u7cca\u5339\u914d",
      "group": "PARSE",
      "cis": 139
    },
    {
      "id": 81,
      "label": "XPath\u8f74\u5b9a\u4f4d\u4e0e\u903b\u8f91\u8fd0\u7b97\u7b26",
      "group": "PARSE",
      "cis": 1
    },
    {
      "id": 82,
      "label": "lxml.etree\u9ad8\u6548\u89e3\u6790HTML\u4e0eXPath\u6267\u884c",
      "group": "PARSE",
      "cis": 137
    },
    {
      "id": 83,
      "label": "Parsel\u5e93\u94fe\u5f0f\u6df7\u5408\u9009\u62e9\u5668\u89e3\u6790",
      "group": "PARSE",
      "cis": 114
    },
    {
      "id": 84,
      "label": "Selectolax\u6781\u901fCython\u89e3\u6790\u5f15\u64ce",
      "group": "PARSE",
      "cis": 21
    },
    {
      "id": 85,
      "label": "HTML\u8868\u683c\u76f4\u63a5\u8f6cPandas\u6570\u636e\u6846",
      "group": "PARSE",
      "cis": 22
    },
    {
      "id": 86,
      "label": "XML\u6587\u6863\u4e0eRSS\u8ba2\u9605\u6e90\u89e3\u6790",
      "group": "PARSE",
      "cis": 1
    },
    {
      "id": 87,
      "label": "\u76f8\u5bf9URL\u8f6c\u7edd\u5bf9\u8def\u5f84urljoin\u62fc\u63a5",
      "group": "PARSE",
      "cis": 13
    },
    {
      "id": 88,
      "label": "\u56db\u5927\u9759\u6001\u89e3\u6790\u65b9\u6848\u6027\u80fd\u4e0e\u573a\u666f\u5bf9\u6bd4",
      "group": "PARSE",
      "cis": 20
    },
    {
      "id": 89,
      "label": "\u670d\u52a1\u7aef\u6e32\u67d3SSR\u4e0e\u5ba2\u6237\u7aef\u6e32\u67d3CSR\u67b6\u6784",
      "group": "API",
      "cis": 307
    },
    {
      "id": 90,
      "label": "AJAX\u5f02\u6b65JavaScript\u4e0eXML\u901a\u4fe1\u539f\u7406",
      "group": "API",
      "cis": 194
    },
    {
      "id": 91,
      "label": "XHR\u5bf9\u8c61\u4e0eFetch\u73b0\u4ee3\u5f02\u6b65API\u5bf9\u6bd4",
      "group": "API",
      "cis": 112
    },
    {
      "id": 92,
      "label": "RESTful\u67b6\u6784\u98ce\u683c\u4e0eWeb\u63a5\u53e3\u8bbe\u8ba1",
      "group": "API",
      "cis": 73
    },
    {
      "id": 93,
      "label": "JSON\u6570\u636e\u5e8f\u5217\u5316\u683c\u5f0f\u4e0e\u5d4c\u5957\u7ed3\u6784",
      "group": "API",
      "cis": 71
    },
    {
      "id": 94,
      "label": "Python\u5185\u7f6ejson\u6a21\u5757\u4e0e\u5b57\u5178\u4e92\u8f6c",
      "group": "API",
      "cis": 63
    },
    {
      "id": 95,
      "label": "JSONPath\u4e0eJMESPath\u6df1\u5c42\u6570\u636e\u62bd\u53d6",
      "group": "API",
      "cis": 1
    },
    {
      "id": 96,
      "label": "JSONP\u8de8\u57df\u56de\u8c03\u539f\u7406\u4e0e\u5b57\u7b26\u4e32\u5265\u79bb",
      "group": "API",
      "cis": 1
    },
    {
      "id": 97,
      "label": "DevTools\u4e2dXHR\u8fc7\u6ee4\u5668\u4e0e\u63a5\u53e3\u5feb\u901f\u5b9a\u4f4d",
      "group": "API",
      "cis": 107
    },
    {
      "id": 98,
      "label": "DevTools\u5168\u5c40\u641c\u7d22\u5173\u952e\u5b57\u53cd\u67e5API",
      "group": "API",
      "cis": 45
    },
    {
      "id": 99,
      "label": "URL\u67e5\u8be2\u53c2\u6570\u9875\u7801\u4e0eOffset\u5206\u9875\u9006\u5411",
      "group": "API",
      "cis": 54
    },
    {
      "id": 100,
      "label": "Cursor\u6e38\u6807\u5206\u9875\u4e0e\u7011\u5e03\u6d41MaxID\u673a\u5236",
      "group": "API",
      "cis": 2
    },
    {
      "id": 101,
      "label": "\u65f6\u95f4\u6233\u53c2\u6570Time\u4e0e\u6beb\u79d2\u7ea7\u6784\u9020",
      "group": "API",
      "cis": 25
    },
    {
      "id": 102,
      "label": "\u590d\u6742POST\u8bf7\u6c42Payload\u8f7d\u8377\u9006\u5411\u590d\u73b0",
      "group": "API",
      "cis": 18
    },
    {
      "id": 103,
      "label": "API\u81ea\u5b9a\u4e49\u8bf7\u6c42\u5934X-Requested-With\u5206\u6790",
      "group": "API",
      "cis": 1
    },
    {
      "id": 104,
      "label": "CORS\u8de8\u57df\u8d44\u6e90\u5171\u4eab\u4e0eOptions\u9884\u68c0\u8bf7\u6c42",
      "group": "API",
      "cis": 1
    },
    {
      "id": 105,
      "label": "GraphQL\u67e5\u8be2\u8bed\u8a00\u4e0e\u5355\u7aef\u70b9\u63a5\u53e3\u91c7\u96c6",
      "group": "API",
      "cis": 1
    },
    {
      "id": 106,
      "label": "WebSocket\u5168\u53cc\u5de5\u957f\u8fde\u63a5\u5b9e\u65f6\u6570\u636e\u6293\u53d6",
      "group": "API",
      "cis": 2
    },
    {
      "id": 107,
      "label": "SSE\u670d\u52a1\u7aef\u63a8\u9001\u4e8b\u4ef6\u6d41\u6570\u636e\u91c7\u96c6",
      "group": "API",
      "cis": 1
    },
    {
      "id": 108,
      "label": "\u5f02\u6b65API\u76f4\u91c7\u4e0eDOM\u89e3\u6790\u5de5\u7a0b\u9009\u578b\u8bc4\u4f30",
      "group": "API",
      "cis": 17
    },
    {
      "id": 109,
      "label": "\u6d4f\u89c8\u5668\u6e32\u67d3\u5f15\u64ceBlink\u5173\u952e\u6e32\u67d3\u8def\u5f84",
      "group": "DYN",
      "cis": 112
    },
    {
      "id": 110,
      "label": "JavaScript\u4e8b\u4ef6\u5faa\u73af\u4e0e\u52a8\u6001DOM\u6302\u8f7d",
      "group": "DYN",
      "cis": 45
    },
    {
      "id": 111,
      "label": "\u65e0\u5934\u6d4f\u89c8\u5668Headless\u6982\u5ff5\u4e0e\u6f14\u8fdb\u5386\u7a0b",
      "group": "DYN",
      "cis": 65
    },
    {
      "id": 112,
      "label": "Selenium\u4e0ePlaywright\u67b6\u6784\u5bf9\u6bd4",
      "group": "DYN",
      "cis": 64
    },
    {
      "id": 113,
      "label": "Playwright\u5b89\u88c5\u4e0e\u6d4f\u89c8\u5668\u9a71\u52a8\u7ba1\u7406",
      "group": "DYN",
      "cis": 59
    },
    {
      "id": 114,
      "label": "Browser\u4e0eContext\u591a\u4e0a\u4e0b\u6587\u9694\u79bb",
      "group": "DYN",
      "cis": 56
    },
    {
      "id": 115,
      "label": "Page\u9875\u9762\u751f\u547d\u5468\u671f\u4e0egoto\u5bfc\u822a\u63a7\u5236",
      "group": "DYN",
      "cis": 46
    },
    {
      "id": 116,
      "label": "Playwright\u667a\u80fd\u5b9a\u4f4d\u5668Locator\u8bed\u6cd5",
      "group": "DYN",
      "cis": 18
    },
    {
      "id": 117,
      "label": "\u663e\u5f0f\u7b49\u5f85\u4e0eAuto-Waiting\u81ea\u52a8\u7b49\u5f85",
      "group": "DYN",
      "cis": 12
    },
    {
      "id": 118,
      "label": "\u9875\u9762\u52a0\u8f7d\u72b6\u6001\u4e0enetworkidle\u7b49\u5f85",
      "group": "DYN",
      "cis": 7
    },
    {
      "id": 119,
      "label": "\u6a21\u62df\u9f20\u6807Click\u4e0e\u952e\u76d8Fill\u4ea4\u4e92",
      "group": "DYN",
      "cis": 4
    },
    {
      "id": 120,
      "label": "\u6267\u884c\u81ea\u5b9a\u4e49JS\u811a\u672cpage.evaluate",
      "group": "DYN",
      "cis": 5
    },
    {
      "id": 121,
      "label": "\u9875\u9762\u6eda\u52a8\u89e6\u5e95\u4e0e\u65e0\u9650\u61d2\u52a0\u8f7d\u89e6\u53d1",
      "group": "DYN",
      "cis": 1
    },
    {
      "id": 122,
      "label": "Iframe\u5185\u5d4c\u6846\u67b6\u5b9a\u4f4d\u4e0e\u4e0a\u4e0b\u6587\u5207\u6362",
      "group": "DYN",
      "cis": 1
    },
    {
      "id": 123,
      "label": "\u591a\u6807\u7b7e\u9875\u5f39\u7a97\u4e0eDialog\u5bf9\u8bdd\u6846\u5904\u7406",
      "group": "DYN",
      "cis": 1
    },
    {
      "id": 124,
      "label": "storage_state\u767b\u5f55\u6001\u6301\u4e45\u5316\u590d\u7528",
      "group": "DYN",
      "cis": 2
    },
    {
      "id": 125,
      "label": "route\u8def\u7531\u62e6\u622a\u4e0e\u5c4f\u853d\u9759\u6001\u8d44\u6e90",
      "group": "DYN",
      "cis": 12
    },
    {
      "id": 126,
      "label": "\u76d1\u542con_response\u76f4\u63a5\u622a\u83b7API\u54cd\u5e94",
      "group": "DYN",
      "cis": 6
    },
    {
      "id": 127,
      "label": "\u7f51\u9875\u5168\u5c4f\u622a\u56fe\u4e0ePDF\u6e32\u67d3\u5bfc\u51fa",
      "group": "DYN",
      "cis": 2
    },
    {
      "id": 128,
      "label": "CDP\u5f00\u53d1\u8005\u534f\u8bae\u5e95\u5c42\u63a7\u5236\u57fa\u7840",
      "group": "DYN",
      "cis": 3
    },
    {
      "id": 129,
      "label": "DrissionPage\u6df7\u5408\u81ea\u52a8\u5316\u6a21\u5f0f",
      "group": "DYN",
      "cis": 1
    },
    {
      "id": 130,
      "label": "\u52a8\u6001\u6e32\u67d3\u8d44\u6e90\u63a7\u5236\u4e0e\u6d4f\u89c8\u5668\u6c60\u590d\u7528",
      "group": "DYN",
      "cis": 2
    },
    {
      "id": 131,
      "label": "\u7f51\u7ad9\u53cd\u722c\u866b\u9632\u5fa1\u7eb5\u6df1\u4f53\u7cfb\u6982\u89c8",
      "group": "ANTI",
      "cis": 115
    },
    {
      "id": 132,
      "label": "User-Agent\u6c60\u4e0e\u968f\u673a\u8f6e\u6362\u7b56\u7565",
      "group": "ANTI",
      "cis": 4
    },
    {
      "id": 133,
      "label": "\u8bf7\u6c42\u5934\u987a\u5e8f\u4e0e\u5b8c\u6574\u6027\u6821\u9a8c\u7ed5\u8fc7",
      "group": "ANTI",
      "cis": 2
    },
    {
      "id": 134,
      "label": "IP\u9891\u7387\u9650\u5236Rate-Limiting\u4e0e429",
      "group": "ANTI",
      "cis": 51
    },
    {
      "id": 135,
      "label": "\u4ee3\u7406IP\u533f\u540d\u5ea6\u5206\u7ea7\u900f\u660e\u4e0e\u9ad8\u533f",
      "group": "ANTI",
      "cis": 6
    },
    {
      "id": 136,
      "label": "\u6570\u636e\u4e2d\u5fc3\u4ee3\u7406\u4f4f\u5b85\u4ee3\u7406\u4e0e\u96a7\u9053\u4ee3\u7406",
      "group": "ANTI",
      "cis": 5
    },
    {
      "id": 137,
      "label": "\u9ad8\u53ef\u7528\u5206\u5e03\u5f0f\u4ee3\u7406IP\u6c60\u67b6\u6784\u8bbe\u8ba1",
      "group": "ANTI",
      "cis": 4
    },
    {
      "id": 138,
      "label": "\u52a8\u6001Cookie\u751f\u6210\u4e0e\u591a\u8d26\u53f7Cookie\u6c60",
      "group": "ANTI",
      "cis": 1
    },
    {
      "id": 139,
      "label": "WebDriver\u7279\u5f81\u68c0\u6d4b\u4e0eStealth\u9690\u85cf",
      "group": "ANTI",
      "cis": 2
    },
    {
      "id": 140,
      "label": "Canvas\u4e0eWebGL\u786c\u4ef6\u6307\u7eb9\u8bc6\u522b\u539f\u7406",
      "group": "ANTI",
      "cis": 1
    },
    {
      "id": 141,
      "label": "TLS\u63e1\u624bJA3\u6307\u7eb9\u4e0ecurl_cffi\u4f2a\u88c5",
      "group": "ANTI",
      "cis": 1
    },
    {
      "id": 142,
      "label": "CSS\u6837\u5f0f\u504f\u79fb\u53cd\u722c\u4e0e\u4f2a\u5143\u7d20\u8fd8\u539f",
      "group": "ANTI",
      "cis": 2
    },
    {
      "id": 143,
      "label": "WebFont\u5b57\u4f53\u52a0\u5bc6\u4e0eTTFont\u6620\u5c04\u8fd8\u539f",
      "group": "ANTI",
      "cis": 1
    },
    {
      "id": 144,
      "label": "\u56fe\u5f62\u9a8c\u8bc1\u7801\u539f\u7406\u4e0eddddocr\u8bc6\u522b",
      "group": "ANTI",
      "cis": 5
    },
    {
      "id": 145,
      "label": "\u6ed1\u5757\u9a8c\u8bc1\u7801\u7f3a\u53e3\u5b9a\u4f4d\u4e0e\u8f68\u8ff9\u6a21\u62df",
      "group": "ANTI",
      "cis": 2
    },
    {
      "id": 146,
      "label": "\u70b9\u9009\u9a8c\u8bc1\u7801\u4e0e\u6253\u7801\u5e73\u53f0\u63a5\u53e3\u96c6\u6210",
      "group": "ANTI",
      "cis": 2
    },
    {
      "id": 147,
      "label": "\u524d\u7aefJS\u4ee3\u7801\u6df7\u6dc6\u4e0eAST\u53cd\u6df7\u6dc6\u57fa\u7840",
      "group": "ANTI",
      "cis": 27
    },
    {
      "id": 148,
      "label": "XHR\u65ad\u70b9\u8c03\u8bd5\u4e0e\u8c03\u7528\u6808CallStack\u8ffd\u8e2a",
      "group": "ANTI",
      "cis": 26
    },
    {
      "id": 149,
      "label": "\u8bf7\u6c42\u7b7e\u540dSign\u4e0eMD5/SHA\u6458\u8981\u9006\u5411",
      "group": "ANTI",
      "cis": 24
    },
    {
      "id": 150,
      "label": "HMAC\u8ba4\u8bc1\u7801\u4e0eBase64\u53c2\u6570\u8fd8\u539f",
      "group": "ANTI",
      "cis": 3
    },
    {
      "id": 151,
      "label": "\u5bf9\u79f0\u52a0\u5bc6AES\u4e0e\u975e\u5bf9\u79f0RSA\u53c2\u6570\u89e3\u5bc6",
      "group": "ANTI",
      "cis": 2
    },
    {
      "id": 152,
      "label": "Python\u8c03\u7528Node\u6267\u884cJS\u4e0eRPC\u8fdc\u7a0b\u8c03\u7528",
      "group": "ANTI",
      "cis": 1
    },
    {
      "id": 153,
      "label": "CPU\u5bc6\u96c6\u578b\u4e0e\u7f51\u7edcIO\u5bc6\u96c6\u578b\u5bf9\u6bd4",
      "group": "ASYNC",
      "cis": 267
    },
    {
      "id": 154,
      "label": "\u540c\u6b65\u963b\u585e\u8bf7\u6c42\u6027\u80fd\u74f6\u9888\u4e0e\u541e\u5410\u5206\u6790",
      "group": "ASYNC",
      "cis": 11
    },
    {
      "id": 155,
      "label": "\u8fdb\u7a0b\u4e0e\u7ebf\u7a0b\u6982\u5ff5\u53ca\u4e0a\u4e0b\u6587\u5207\u6362\u5f00\u9500",
      "group": "ASYNC",
      "cis": 134
    },
    {
      "id": 156,
      "label": "Python\u5168\u5c40\u89e3\u91ca\u5668\u9501GIL\u5f71\u54cd\u5256\u6790",
      "group": "ASYNC",
      "cis": 133
    },
    {
      "id": 157,
      "label": "ThreadPoolExecutor\u7ebf\u7a0b\u6c60\u5e76\u53d1\u91c7\u96c6",
      "group": "ASYNC",
      "cis": 10
    },
    {
      "id": 158,
      "label": "\u7ebf\u7a0b\u5b89\u5168\u961f\u5217Queue\u4e0e\u751f\u4ea7\u8005\u6d88\u8d39\u8005",
      "group": "ASYNC",
      "cis": 1
    },
    {
      "id": 159,
      "label": "ProcessPoolExecutor\u591a\u8fdb\u7a0b\u5e76\u884c\u89e3\u6790",
      "group": "ASYNC",
      "cis": 1
    },
    {
      "id": 160,
      "label": "\u534f\u7a0bCoroutine\u6982\u5ff5\u4e0e\u7528\u6237\u6001\u5207\u6362",
      "group": "ASYNC",
      "cis": 121
    },
    {
      "id": 161,
      "label": "asyncio\u4e8b\u4ef6\u5faa\u73afEvent-Loop\u539f\u7406",
      "group": "ASYNC",
      "cis": 120
    },
    {
      "id": 162,
      "label": "async\u4e0eawait\u5f02\u6b65\u5173\u952e\u5b57\u8bed\u6cd5\u89c4\u8303",
      "group": "ASYNC",
      "cis": 44
    },
    {
      "id": 163,
      "label": "asyncio.gather\u4e0eTask\u5e76\u53d1\u4efb\u52a1\u7f16\u6392",
      "group": "ASYNC",
      "cis": 42
    },
    {
      "id": 164,
      "label": "aiohttp\u5f02\u6b65\u5ba2\u6237\u7aef\u4e0eSession\u590d\u7528",
      "group": "ASYNC",
      "cis": 36
    },
    {
      "id": 165,
      "label": "httpx.AsyncClient\u5f02\u6b65\u8fde\u63a5\u6c60\u8c03\u4f18",
      "group": "ASYNC",
      "cis": 1
    },
    {
      "id": 166,
      "label": "Playwright\u5f02\u6b65API\u591a\u9875\u9762\u5e76\u53d1\u6e32\u67d3",
      "group": "ASYNC",
      "cis": 4
    },
    {
      "id": 167,
      "label": "Semaphore\u4fe1\u53f7\u91cf\u63a7\u5236\u6700\u5927\u5e76\u53d1\u6570",
      "group": "ASYNC",
      "cis": 26
    },
    {
      "id": 168,
      "label": "\u4ee4\u724c\u6876\u7b97\u6cd5\u4e0eaiolimiter\u5f02\u6b65\u9650\u6d41",
      "group": "ASYNC",
      "cis": 2
    },
    {
      "id": 169,
      "label": "aiofiles\u5f02\u6b65\u975e\u963b\u585e\u6587\u4ef6\u5199\u5165",
      "group": "ASYNC",
      "cis": 1
    },
    {
      "id": 170,
      "label": "\u591a\u7ebf\u7a0b\u4e0e\u5f02\u6b65\u534f\u7a0b\u722c\u866b\u538b\u6d4b\u5bf9\u6bd4",
      "group": "ASYNC",
      "cis": 7
    },
    {
      "id": 171,
      "label": "\u539f\u59cb\u7f51\u9875\u810f\u6570\u636e\u4e0eETL\u6e05\u6d17\u6d41\u6c34\u7ebf",
      "group": "STORE",
      "cis": 198
    },
    {
      "id": 172,
      "label": "HTML\u6b8b\u7559\u6807\u7b7e\u5265\u79bb\u4e0e\u5b9e\u4f53\u5b57\u7b26\u8fd8\u539f",
      "group": "STORE",
      "cis": 45
    },
    {
      "id": 173,
      "label": "\u7a7a\u767d\u5b57\u7b26\u5f52\u4e00\u5316\u4e0e\u5168\u534a\u89d2\u8f6c\u6362",
      "group": "STORE",
      "cis": 21
    },
    {
      "id": 174,
      "label": "\u65e5\u671f\u65f6\u95f4\u6807\u51c6\u5316\u4e0e\u6570\u503c\u5355\u4f4d\u8f6c\u6362",
      "group": "STORE",
      "cis": 38
    },
    {
      "id": 175,
      "label": "Pydantic\u6570\u636e\u6a21\u578b\u4e0e\u5b57\u6bb5\u7c7b\u578b\u5f3a\u6821\u9a8c",
      "group": "STORE",
      "cis": 37
    },
    {
      "id": 176,
      "label": "\u5185\u5bb9\u6307\u7eb9MD5/SHA256\u4e0eSimHash\u53bb\u91cd",
      "group": "STORE",
      "cis": 20
    },
    {
      "id": 177,
      "label": "CSV\u6587\u4ef6\u8bfb\u5199\u4e0eUTF-8-SIG\u9632\u4e71\u7801",
      "group": "STORE",
      "cis": 1
    },
    {
      "id": 178,
      "label": "JSON\u4e0eJSON-Lines\u6d41\u5f0f\u884c\u5b58\u50a8\u683c\u5f0f",
      "group": "STORE",
      "cis": 14
    },
    {
      "id": 179,
      "label": "Parquet\u5217\u5f0f\u5b58\u50a8\u4e0ePandas\u6279\u91cf\u5bfc\u51fa",
      "group": "STORE",
      "cis": 3
    },
    {
      "id": 180,
      "label": "SQLite\u8f7b\u91cf\u7ea7\u5d4c\u5165\u5f0f\u6570\u636e\u5e93\u5b58\u50a8",
      "group": "STORE",
      "cis": 8
    },
    {
      "id": 181,
      "label": "MySQL\u8868\u7ed3\u6784\u8bbe\u8ba1\u4e0eutf8mb4\u5b57\u7b26\u96c6",
      "group": "STORE",
      "cis": 7
    },
    {
      "id": 182,
      "label": "PyMySQL\u53c2\u6570\u5316\u9632\u6ce8\u5165\u4e0e\u6279\u91cf\u5199\u5165",
      "group": "STORE",
      "cis": 6
    },
    {
      "id": 183,
      "label": "\u552f\u4e00\u7d22\u5f15\u7ea6\u675f\u4e0eUPSERT\u5e42\u7b49\u66f4\u65b0",
      "group": "STORE",
      "cis": 4
    },
    {
      "id": 184,
      "label": "SQLAlchemy\u4e0e\u6570\u636e\u5e93\u8fde\u63a5\u6c60\u9ad8\u5e76\u53d1",
      "group": "STORE",
      "cis": 1
    },
    {
      "id": 185,
      "label": "MongoDB\u6587\u6863\u6570\u636e\u5e93\u534a\u7ed3\u6784\u5316\u5b58\u50a8",
      "group": "STORE",
      "cis": 6
    },
    {
      "id": 186,
      "label": "PyMongo\u96c6\u5408\u64cd\u4f5c\u4e0eupsert\u5e42\u7b49\u53bb\u91cd",
      "group": "STORE",
      "cis": 3
    },
    {
      "id": 187,
      "label": "Motor\u4e0eaiomysql\u5f02\u6b65\u6570\u636e\u5e93\u5199\u5165",
      "group": "STORE",
      "cis": 2
    },
    {
      "id": 188,
      "label": "Redis\u5185\u5b58\u6570\u636e\u5e93\u6838\u5fc3\u6570\u636e\u7ed3\u6784",
      "group": "STORE",
      "cis": 10
    },
    {
      "id": 189,
      "label": "Redis\u96c6\u5408Set\u4e0e\u5e03\u9686\u8fc7\u6ee4\u5668URL\u53bb\u91cd",
      "group": "STORE",
      "cis": 5
    },
    {
      "id": 190,
      "label": "\u591a\u6a21\u6001\u6587\u4ef6\u54c8\u5e0c\u547d\u540d\u4e0e\u5bf9\u8c61\u5b58\u50a8\u5f52\u6863",
      "group": "STORE",
      "cis": 4
    },
    {
      "id": 191,
      "label": "Scrapy\u5de5\u4e1a\u7ea7\u722c\u866b\u6846\u67b6\u8bbe\u8ba1\u54f2\u5b66",
      "group": "SCRP",
      "cis": 74
    },
    {
      "id": 192,
      "label": "Scrapy\u516d\u5927\u7ec4\u4ef6\u4e0e\u6570\u636e\u6d41\u8f6c\u62d3\u6251",
      "group": "SCRP",
      "cis": 14
    },
    {
      "id": 193,
      "label": "Twisted\u5f02\u6b65\u7f51\u7edc\u5f15\u64ce\u5e95\u5c42\u673a\u5236",
      "group": "SCRP",
      "cis": 1
    },
    {
      "id": 194,
      "label": "Scrapy\u9879\u76ee\u811a\u624b\u67b6\u4e0e\u76ee\u5f55\u7ed3\u6784\u89c4\u8303",
      "group": "SCRP",
      "cis": 59
    },
    {
      "id": 195,
      "label": "Spider\u57fa\u7c7b\u7f16\u5199\u4e0estart_requests",
      "group": "SCRP",
      "cis": 29
    },
    {
      "id": 196,
      "label": "Response\u9009\u62e9\u5668\u63d0\u53d6\u4e0eyield\u751f\u6210\u5668",
      "group": "SCRP",
      "cis": 14
    },
    {
      "id": 197,
      "label": "scrapy.Request\u7ffb\u9875\u4e0emeta\u4e0a\u4e0b\u6587\u4f20\u53c2",
      "group": "SCRP",
      "cis": 9
    },
    {
      "id": 198,
      "label": "Item\u6570\u636e\u5bb9\u5668\u4e0eItemLoader\u6e05\u6d17\u5668",
      "group": "SCRP",
      "cis": 4
    },
    {
      "id": 199,
      "label": "CrawlSpider\u5168\u7ad9\u722c\u866b\u4e0eLinkExtractor",
      "group": "SCRP",
      "cis": 3
    },
    {
      "id": 200,
      "label": "Item-Pipeline\u7ba1\u9053\u4e0e\u591a\u7ea7\u4f18\u5148\u7ea7\u7f16\u6392",
      "group": "SCRP",
      "cis": 3
    },
    {
      "id": 201,
      "label": "Pipeline\u5b9e\u73b0JSONL\u4e0e\u6570\u636e\u5e93\u5165\u5e93",
      "group": "SCRP",
      "cis": 1
    },
    {
      "id": 202,
      "label": "Files\u4e0eImagesPipeline\u591a\u5a92\u4f53\u4e0b\u8f7d",
      "group": "SCRP",
      "cis": 1
    },
    {
      "id": 203,
      "label": "Downloader-Middleware\u4e0b\u8f7d\u5668\u4e2d\u95f4\u4ef6",
      "group": "SCRP",
      "cis": 5
    },
    {
      "id": 204,
      "label": "\u81ea\u5b9a\u4e49\u4e2d\u95f4\u4ef6\u968f\u673aUA\u4e0e\u52a8\u6001\u4ee3\u7406\u6ce8\u5165",
      "group": "SCRP",
      "cis": 3
    },
    {
      "id": 205,
      "label": "scrapy-playwright\u96c6\u6210\u52a8\u6001\u6e32\u67d3",
      "group": "SCRP",
      "cis": 1
    },
    {
      "id": 206,
      "label": "settings.py\u5168\u5c40\u5e76\u53d1\u4e0e\u5ef6\u8fdf\u8c03\u4f18",
      "group": "SCRP",
      "cis": 16
    },
    {
      "id": 207,
      "label": "AutoThrottle\u81ea\u52a8\u9650\u901f\u4e0eHTTPCache",
      "group": "SCRP",
      "cis": 1
    },
    {
      "id": 208,
      "label": "JOBDIR\u65ad\u70b9\u7eed\u722c\u4e0e\u65e5\u5fd7\u7edf\u8ba1\u72b6\u6001",
      "group": "SCRP",
      "cis": 14
    },
    {
      "id": 209,
      "label": "scrapy-redis\u5206\u5e03\u5f0f\u5171\u4eab\u8c03\u5ea6\u961f\u5217",
      "group": "SCRP",
      "cis": 4
    },
    {
      "id": 210,
      "label": "Scrapyd\u670d\u52a1\u90e8\u7f72\u4e0e\u96c6\u7fa4\u53ef\u89c6\u5316\u7ba1\u7406",
      "group": "SCRP",
      "cis": 3
    },
    {
      "id": 211,
      "label": "AI\u4e0e\u5927\u6a21\u578b\u8bad\u7ec3\u6570\u636e\u751f\u547d\u5468\u671f\u5168\u8c8c",
      "group": "AICRP",
      "cis": 36
    },
    {
      "id": 212,
      "label": "LLM\u9884\u8bad\u7ec3\u8bed\u6599Corpus\u8d28\u91cf\u6807\u51c6",
      "group": "AICRP",
      "cis": 27
    },
    {
      "id": 213,
      "label": "\u7f51\u9875\u6b63\u6587\u62bd\u53d6Readability\u4e0eTrafilatura",
      "group": "AICRP",
      "cis": 23
    },
    {
      "id": 214,
      "label": "\u7f51\u9875\u566a\u97f3\u5254\u9664\u4e0e\u6837\u677f\u6587\u672c\u8fc7\u6ee4",
      "group": "AICRP",
      "cis": 4
    },
    {
      "id": 215,
      "label": "HTML\u8f6cMarkdown\u7ed3\u6784\u5316\u4fdd\u7559\u4ee3\u7801\u8868\u683c",
      "group": "AICRP",
      "cis": 18
    },
    {
      "id": 216,
      "label": "Jina-Reader\u4e0eFirecrawl\u7f51\u9875\u63d0\u53d6",
      "group": "AICRP",
      "cis": 1
    },
    {
      "id": 217,
      "label": "Crawl4AI\u5927\u6a21\u578b\u53cb\u597d\u578b\u5f02\u6b65\u722c\u866b",
      "group": "AICRP",
      "cis": 2
    },
    {
      "id": 218,
      "label": "\u57fa\u4e8eLLM\u4e0eFunction-Calling\u96f6\u6837\u672c\u89e3\u6790",
      "group": "AICRP",
      "cis": 7
    },
    {
      "id": 219,
      "label": "DOM\u6811\u7cbe\u7b80Pruning\u964d\u4f4eToken\u6d88\u8017",
      "group": "AICRP",
      "cis": 1
    },
    {
      "id": 220,
      "label": "LLM\u81ea\u52a8\u751f\u6210\u9009\u62e9\u5668\u4e0e\u81ea\u6108\u4fee\u590d\u722c\u866b",
      "group": "AICRP",
      "cis": 4
    },
    {
      "id": 221,
      "label": "AI\u89c6\u89c9Agent\u7ed3\u5408\u622a\u56fe\u8bc6\u522b\u590d\u6742\u4ea4\u4e92",
      "group": "AICRP",
      "cis": 1
    },
    {
      "id": 222,
      "label": "\u6307\u4ee4\u5fae\u8c03SFT\u6570\u636e\u96c6Alpaca/ShareGPT\u683c\u5f0f",
      "group": "AICRP",
      "cis": 3
    },
    {
      "id": 223,
      "label": "\u5782\u76f4\u793e\u533a\u95ee\u7b54\u91c7\u96c6\u6784\u5efa\u9886\u57dfSFT\u8bed\u6599",
      "group": "AICRP",
      "cis": 2
    },
    {
      "id": 224,
      "label": "RAG\u68c0\u7d22\u589e\u5f3a\u751f\u6210\u4e0e\u77e5\u8bc6\u5e93\u5b9e\u65f6\u66f4\u65b0",
      "group": "AICRP",
      "cis": 4
    },
    {
      "id": 225,
      "label": "\u6587\u6863\u8bed\u4e49\u5206\u5757Chunking\u4e0e\u5143\u6570\u636e\u4fdd\u7559",
      "group": "AICRP",
      "cis": 3
    },
    {
      "id": 226,
      "label": "Embedding\u5411\u91cf\u5316\u4e0e\u5411\u91cf\u6570\u636e\u5e93\u5199\u5165",
      "group": "AICRP",
      "cis": 2
    },
    {
      "id": 227,
      "label": "\u591a\u6a21\u6001\u56fe\u6587\u5bf9\u91c7\u96c6\u4e0eCLIP\u5bf9\u9f50\u8fc7\u6ee4",
      "group": "AICRP",
      "cis": 1
    },
    {
      "id": 228,
      "label": "\u8bed\u6599\u9690\u79c1\u8131\u654fPII\u64e6\u9664\u4e0eMinHash\u53bb\u91cd",
      "group": "AICRP",
      "cis": 3
    },
    {
      "id": 229,
      "label": "\u4f01\u4e1a\u7ea7\u91c7\u96c6\u9700\u6c42\u8c03\u7814\u4e0e\u76ee\u6807\u7ad9\u70b9\u52d8\u5bdf",
      "group": "PROJ",
      "cis": 15
    },
    {
      "id": 230,
      "label": "\u722c\u866b\u5de5\u7a0b\u6a21\u5757\u5316\u7ed3\u6784\u4e0e\u914d\u7f6e\u89e3\u8026",
      "group": "PROJ",
      "cis": 13
    },
    {
      "id": 231,
      "label": "Docker\u5bb9\u5668\u5316\u5c01\u88c5\u722c\u866b\u4e0e\u6d4f\u89c8\u5668\u73af\u5883",
      "group": "PROJ",
      "cis": 2
    },
    {
      "id": 232,
      "label": "APScheduler\u4e0eAirflow\u5b9a\u65f6\u589e\u91cf\u8c03\u5ea6",
      "group": "PROJ",
      "cis": 3
    },
    {
      "id": 233,
      "label": "Loguru\u7ed3\u6784\u5316\u65e5\u5fd7\u4e0e\u5f02\u5e38\u5806\u6808\u8ffd\u8e2a",
      "group": "PROJ",
      "cis": 7
    },
    {
      "id": 234,
      "label": "\u6838\u5fc3\u6307\u6807\u76d1\u63a7\u4e0e\u98de\u4e66\u9489\u9489Webhook\u544a\u8b66",
      "group": "PROJ",
      "cis": 6
    },
    {
      "id": 235,
      "label": "\u9875\u9762\u7ed3\u6784\u6f02\u79fb\u68c0\u6d4b\u4e0e\u81ea\u52a8\u5316\u5065\u5eb7\u5de1\u68c0",
      "group": "PROJ",
      "cis": 3
    },
    {
      "id": 236,
      "label": "\u6570\u636e\u96c6\u8d28\u91cf\u8bc4\u4f30\u62a5\u544a\u4e0e\u4fe1\u566a\u6bd4\u5ba1\u8ba1",
      "group": "PROJ",
      "cis": 2
    },
    {
      "id": 237,
      "label": "\u5b9e\u8bad\u4e00\uff1a\u65b0\u95fb\u8d44\u8baf\u4e0e\u8206\u60c5\u6df7\u5408\u91c7\u96c6\u7cfb\u7edf",
      "group": "PROJ",
      "cis": 1
    },
    {
      "id": 238,
      "label": "\u5b9e\u8bad\u4e8c\uff1a\u7535\u5546\u52a8\u6001\u6e32\u67d3\u591a\u6a21\u6001\u5546\u54c1\u91c7\u96c6",
      "group": "PROJ",
      "cis": 1
    },
    {
      "id": 239,
      "label": "\u5b9e\u8bad\u4e09\uff1aScrapy-Redis\u5206\u5e03\u5f0f\u793e\u533a\u722c\u866b",
      "group": "PROJ",
      "cis": 2
    },
    {
      "id": 240,
      "label": "\u7efc\u5408\u5b9e\u8bad\uff1a\u5782\u76f4\u9886\u57df\u5927\u6a21\u578bRAG\u6570\u636e\u5de5\u7a0b",
      "group": "PROJ",
      "cis": 1
    }
  ],
  "edges": [
    {
      "from": 8,
      "to": 2
    },
    {
      "from": 8,
      "to": 3
    },
    {
      "from": 9,
      "to": 1
    },
    {
      "from": 9,
      "to": 8
    },
    {
      "from": 10,
      "to": 9
    },
    {
      "from": 11,
      "to": 9
    },
    {
      "from": 12,
      "to": 11
    },
    {
      "from": 13,
      "to": 8
    },
    {
      "from": 13,
      "to": 11
    },
    {
      "from": 14,
      "to": 1
    },
    {
      "from": 14,
      "to": 9
    },
    {
      "from": 15,
      "to": 5
    },
    {
      "from": 15,
      "to": 14
    },
    {
      "from": 16,
      "to": 5
    },
    {
      "from": 16,
      "to": 15
    },
    {
      "from": 17,
      "to": 5
    },
    {
      "from": 17,
      "to": 15
    },
    {
      "from": 18,
      "to": 7
    },
    {
      "from": 18,
      "to": 8
    },
    {
      "from": 18,
      "to": 14
    },
    {
      "from": 19,
      "to": 4
    },
    {
      "from": 19,
      "to": 18
    },
    {
      "from": 20,
      "to": 7
    },
    {
      "from": 20,
      "to": 18
    },
    {
      "from": 21,
      "to": 2
    },
    {
      "from": 21,
      "to": 8
    },
    {
      "from": 22,
      "to": 1
    },
    {
      "from": 22,
      "to": 21
    },
    {
      "from": 23,
      "to": 2
    },
    {
      "from": 23,
      "to": 21
    },
    {
      "from": 24,
      "to": 2
    },
    {
      "from": 24,
      "to": 23
    },
    {
      "from": 25,
      "to": 24
    },
    {
      "from": 26,
      "to": 8
    },
    {
      "from": 26,
      "to": 24
    },
    {
      "from": 27,
      "to": 26
    },
    {
      "from": 28,
      "to": 26
    },
    {
      "from": 29,
      "to": 28
    },
    {
      "from": 30,
      "to": 28
    },
    {
      "from": 31,
      "to": 26
    },
    {
      "from": 32,
      "to": 3
    },
    {
      "from": 32,
      "to": 31
    },
    {
      "from": 33,
      "to": 31
    },
    {
      "from": 34,
      "to": 31
    },
    {
      "from": 35,
      "to": 31
    },
    {
      "from": 36,
      "to": 26
    },
    {
      "from": 36,
      "to": 31
    },
    {
      "from": 37,
      "to": 3
    },
    {
      "from": 37,
      "to": 26
    },
    {
      "from": 38,
      "to": 37
    },
    {
      "from": 39,
      "to": 31
    },
    {
      "from": 39,
      "to": 38
    },
    {
      "from": 40,
      "to": 25
    },
    {
      "from": 40,
      "to": 26
    },
    {
      "from": 41,
      "to": 3
    },
    {
      "from": 41,
      "to": 26
    },
    {
      "from": 42,
      "to": 31
    },
    {
      "from": 42,
      "to": 41
    },
    {
      "from": 43,
      "to": 1
    },
    {
      "from": 44,
      "to": 1
    },
    {
      "from": 44,
      "to": 26
    },
    {
      "from": 44,
      "to": 43
    },
    {
      "from": 45,
      "to": 22
    },
    {
      "from": 45,
      "to": 44
    },
    {
      "from": 46,
      "to": 43
    },
    {
      "from": 46,
      "to": 44
    },
    {
      "from": 47,
      "to": 27
    },
    {
      "from": 47,
      "to": 45
    },
    {
      "from": 47,
      "to": 46
    },
    {
      "from": 48,
      "to": 28
    },
    {
      "from": 48,
      "to": 46
    },
    {
      "from": 49,
      "to": 4
    },
    {
      "from": 49,
      "to": 48
    },
    {
      "from": 50,
      "to": 32
    },
    {
      "from": 50,
      "to": 33
    },
    {
      "from": 50,
      "to": 47
    },
    {
      "from": 51,
      "to": 27
    },
    {
      "from": 51,
      "to": 34
    },
    {
      "from": 51,
      "to": 46
    },
    {
      "from": 52,
      "to": 34
    },
    {
      "from": 52,
      "to": 51
    },
    {
      "from": 53,
      "to": 34
    },
    {
      "from": 53,
      "to": 51
    },
    {
      "from": 54,
      "to": 6
    },
    {
      "from": 54,
      "to": 48
    },
    {
      "from": 55,
      "to": 37
    },
    {
      "from": 55,
      "to": 50
    },
    {
      "from": 56,
      "to": 38
    },
    {
      "from": 56,
      "to": 55
    },
    {
      "from": 57,
      "to": 29
    },
    {
      "from": 57,
      "to": 47
    },
    {
      "from": 58,
      "to": 24
    },
    {
      "from": 58,
      "to": 47
    },
    {
      "from": 59,
      "to": 25
    },
    {
      "from": 59,
      "to": 47
    },
    {
      "from": 60,
      "to": 24
    },
    {
      "from": 60,
      "to": 50
    },
    {
      "from": 61,
      "to": 1
    },
    {
      "from": 61,
      "to": 58
    },
    {
      "from": 62,
      "to": 61
    },
    {
      "from": 63,
      "to": 40
    },
    {
      "from": 63,
      "to": 56
    },
    {
      "from": 64,
      "to": 42
    },
    {
      "from": 64,
      "to": 50
    },
    {
      "from": 65,
      "to": 4
    },
    {
      "from": 65,
      "to": 14
    },
    {
      "from": 66,
      "to": 4
    },
    {
      "from": 66,
      "to": 65
    },
    {
      "from": 67,
      "to": 4
    },
    {
      "from": 67,
      "to": 5
    },
    {
      "from": 67,
      "to": 66
    },
    {
      "from": 68,
      "to": 67
    },
    {
      "from": 69,
      "to": 49
    },
    {
      "from": 69,
      "to": 65
    },
    {
      "from": 70,
      "to": 1
    },
    {
      "from": 70,
      "to": 65
    },
    {
      "from": 71,
      "to": 70
    },
    {
      "from": 72,
      "to": 71
    },
    {
      "from": 73,
      "to": 72
    },
    {
      "from": 74,
      "to": 67
    },
    {
      "from": 74,
      "to": 68
    },
    {
      "from": 75,
      "to": 74
    },
    {
      "from": 76,
      "to": 66
    },
    {
      "from": 76,
      "to": 68
    },
    {
      "from": 77,
      "to": 75
    },
    {
      "from": 77,
      "to": 76
    },
    {
      "from": 78,
      "to": 75
    },
    {
      "from": 78,
      "to": 77
    },
    {
      "from": 79,
      "to": 67
    },
    {
      "from": 79,
      "to": 68
    },
    {
      "from": 80,
      "to": 79
    },
    {
      "from": 81,
      "to": 80
    },
    {
      "from": 82,
      "to": 79
    },
    {
      "from": 82,
      "to": 80
    },
    {
      "from": 83,
      "to": 76
    },
    {
      "from": 83,
      "to": 82
    },
    {
      "from": 84,
      "to": 76
    },
    {
      "from": 84,
      "to": 83
    },
    {
      "from": 85,
      "to": 66
    },
    {
      "from": 85,
      "to": 78
    },
    {
      "from": 86,
      "to": 67
    },
    {
      "from": 86,
      "to": 82
    },
    {
      "from": 87,
      "to": 21
    },
    {
      "from": 87,
      "to": 45
    },
    {
      "from": 87,
      "to": 78
    },
    {
      "from": 88,
      "to": 73
    },
    {
      "from": 88,
      "to": 77
    },
    {
      "from": 88,
      "to": 82
    },
    {
      "from": 88,
      "to": 84
    },
    {
      "from": 89,
      "to": 3
    },
    {
      "from": 89,
      "to": 67
    },
    {
      "from": 90,
      "to": 26
    },
    {
      "from": 90,
      "to": 89
    },
    {
      "from": 91,
      "to": 41
    },
    {
      "from": 91,
      "to": 90
    },
    {
      "from": 92,
      "to": 27
    },
    {
      "from": 92,
      "to": 90
    },
    {
      "from": 93,
      "to": 5
    },
    {
      "from": 93,
      "to": 34
    },
    {
      "from": 93,
      "to": 92
    },
    {
      "from": 94,
      "to": 1
    },
    {
      "from": 94,
      "to": 48
    },
    {
      "from": 94,
      "to": 93
    },
    {
      "from": 95,
      "to": 79
    },
    {
      "from": 95,
      "to": 94
    },
    {
      "from": 96,
      "to": 73
    },
    {
      "from": 96,
      "to": 90
    },
    {
      "from": 96,
      "to": 94
    },
    {
      "from": 97,
      "to": 42
    },
    {
      "from": 97,
      "to": 91
    },
    {
      "from": 98,
      "to": 42
    },
    {
      "from": 98,
      "to": 97
    },
    {
      "from": 99,
      "to": 47
    },
    {
      "from": 99,
      "to": 97
    },
    {
      "from": 100,
      "to": 94
    },
    {
      "from": 100,
      "to": 99
    },
    {
      "from": 101,
      "to": 1
    },
    {
      "from": 101,
      "to": 99
    },
    {
      "from": 102,
      "to": 52
    },
    {
      "from": 102,
      "to": 98
    },
    {
      "from": 103,
      "to": 31
    },
    {
      "from": 103,
      "to": 50
    },
    {
      "from": 103,
      "to": 97
    },
    {
      "from": 104,
      "to": 31
    },
    {
      "from": 104,
      "to": 91
    },
    {
      "from": 105,
      "to": 52
    },
    {
      "from": 105,
      "to": 93
    },
    {
      "from": 106,
      "to": 24
    },
    {
      "from": 106,
      "to": 40
    },
    {
      "from": 106,
      "to": 91
    },
    {
      "from": 107,
      "to": 36
    },
    {
      "from": 107,
      "to": 91
    },
    {
      "from": 107,
      "to": 106
    },
    {
      "from": 108,
      "to": 88
    },
    {
      "from": 108,
      "to": 99
    },
    {
      "from": 108,
      "to": 102
    },
    {
      "from": 109,
      "to": 3
    },
    {
      "from": 109,
      "to": 67
    },
    {
      "from": 109,
      "to": 89
    },
    {
      "from": 110,
      "to": 68
    },
    {
      "from": 110,
      "to": 109
    },
    {
      "from": 111,
      "to": 109
    },
    {
      "from": 112,
      "to": 111
    },
    {
      "from": 113,
      "to": 43
    },
    {
      "from": 113,
      "to": 112
    },
    {
      "from": 114,
      "to": 37
    },
    {
      "from": 114,
      "to": 113
    },
    {
      "from": 115,
      "to": 114
    },
    {
      "from": 116,
      "to": 76
    },
    {
      "from": 116,
      "to": 79
    },
    {
      "from": 116,
      "to": 115
    },
    {
      "from": 117,
      "to": 110
    },
    {
      "from": 117,
      "to": 116
    },
    {
      "from": 118,
      "to": 90
    },
    {
      "from": 118,
      "to": 115
    },
    {
      "from": 118,
      "to": 117
    },
    {
      "from": 119,
      "to": 116
    },
    {
      "from": 119,
      "to": 117
    },
    {
      "from": 120,
      "to": 110
    },
    {
      "from": 120,
      "to": 115
    },
    {
      "from": 121,
      "to": 100
    },
    {
      "from": 121,
      "to": 120
    },
    {
      "from": 122,
      "to": 67
    },
    {
      "from": 122,
      "to": 116
    },
    {
      "from": 123,
      "to": 114
    },
    {
      "from": 123,
      "to": 119
    },
    {
      "from": 124,
      "to": 37
    },
    {
      "from": 124,
      "to": 56
    },
    {
      "from": 124,
      "to": 114
    },
    {
      "from": 125,
      "to": 42
    },
    {
      "from": 125,
      "to": 115
    },
    {
      "from": 126,
      "to": 97
    },
    {
      "from": 126,
      "to": 118
    },
    {
      "from": 126,
      "to": 125
    },
    {
      "from": 127,
      "to": 54
    },
    {
      "from": 127,
      "to": 115
    },
    {
      "from": 128,
      "to": 41
    },
    {
      "from": 128,
      "to": 112
    },
    {
      "from": 128,
      "to": 125
    },
    {
      "from": 129,
      "to": 56
    },
    {
      "from": 129,
      "to": 112
    },
    {
      "from": 129,
      "to": 126
    },
    {
      "from": 130,
      "to": 114
    },
    {
      "from": 130,
      "to": 125
    },
    {
      "from": 130,
      "to": 126
    },
    {
      "from": 131,
      "to": 18
    },
    {
      "from": 131,
      "to": 30
    },
    {
      "from": 131,
      "to": 50
    },
    {
      "from": 132,
      "to": 32
    },
    {
      "from": 132,
      "to": 50
    },
    {
      "from": 132,
      "to": 131
    },
    {
      "from": 133,
      "to": 31
    },
    {
      "from": 133,
      "to": 63
    },
    {
      "from": 133,
      "to": 131
    },
    {
      "from": 134,
      "to": 30
    },
    {
      "from": 134,
      "to": 58
    },
    {
      "from": 134,
      "to": 131
    },
    {
      "from": 135,
      "to": 60
    },
    {
      "from": 135,
      "to": 134
    },
    {
      "from": 136,
      "to": 135
    },
    {
      "from": 137,
      "to": 5
    },
    {
      "from": 137,
      "to": 62
    },
    {
      "from": 137,
      "to": 136
    },
    {
      "from": 138,
      "to": 56
    },
    {
      "from": 138,
      "to": 124
    },
    {
      "from": 138,
      "to": 131
    },
    {
      "from": 139,
      "to": 120
    },
    {
      "from": 139,
      "to": 128
    },
    {
      "from": 139,
      "to": 131
    },
    {
      "from": 140,
      "to": 109
    },
    {
      "from": 140,
      "to": 139
    },
    {
      "from": 141,
      "to": 25
    },
    {
      "from": 141,
      "to": 63
    },
    {
      "from": 141,
      "to": 133
    },
    {
      "from": 142,
      "to": 76
    },
    {
      "from": 142,
      "to": 78
    },
    {
      "from": 142,
      "to": 131
    },
    {
      "from": 143,
      "to": 69
    },
    {
      "from": 143,
      "to": 82
    },
    {
      "from": 143,
      "to": 142
    },
    {
      "from": 144,
      "to": 54
    },
    {
      "from": 144,
      "to": 131
    },
    {
      "from": 145,
      "to": 119
    },
    {
      "from": 145,
      "to": 144
    },
    {
      "from": 146,
      "to": 52
    },
    {
      "from": 146,
      "to": 144
    },
    {
      "from": 147,
      "to": 110
    },
    {
      "from": 147,
      "to": 131
    },
    {
      "from": 148,
      "to": 42
    },
    {
      "from": 148,
      "to": 98
    },
    {
      "from": 148,
      "to": 147
    },
    {
      "from": 149,
      "to": 1
    },
    {
      "from": 149,
      "to": 101
    },
    {
      "from": 149,
      "to": 148
    },
    {
      "from": 150,
      "to": 22
    },
    {
      "from": 150,
      "to": 149
    },
    {
      "from": 151,
      "to": 25
    },
    {
      "from": 151,
      "to": 150
    },
    {
      "from": 152,
      "to": 120
    },
    {
      "from": 152,
      "to": 148
    },
    {
      "from": 152,
      "to": 151
    },
    {
      "from": 153,
      "to": 1
    },
    {
      "from": 153,
      "to": 26
    },
    {
      "from": 154,
      "to": 58
    },
    {
      "from": 154,
      "to": 153
    },
    {
      "from": 155,
      "to": 153
    },
    {
      "from": 156,
      "to": 1
    },
    {
      "from": 156,
      "to": 155
    },
    {
      "from": 157,
      "to": 56
    },
    {
      "from": 157,
      "to": 154
    },
    {
      "from": 157,
      "to": 156
    },
    {
      "from": 158,
      "to": 5
    },
    {
      "from": 158,
      "to": 15
    },
    {
      "from": 158,
      "to": 157
    },
    {
      "from": 159,
      "to": 88
    },
    {
      "from": 159,
      "to": 156
    },
    {
      "from": 160,
      "to": 153
    },
    {
      "from": 160,
      "to": 156
    },
    {
      "from": 161,
      "to": 160
    },
    {
      "from": 162,
      "to": 161
    },
    {
      "from": 163,
      "to": 162
    },
    {
      "from": 164,
      "to": 56
    },
    {
      "from": 164,
      "to": 163
    },
    {
      "from": 165,
      "to": 63
    },
    {
      "from": 165,
      "to": 163
    },
    {
      "from": 166,
      "to": 114
    },
    {
      "from": 166,
      "to": 163
    },
    {
      "from": 167,
      "to": 134
    },
    {
      "from": 167,
      "to": 164
    },
    {
      "from": 168,
      "to": 134
    },
    {
      "from": 168,
      "to": 167
    },
    {
      "from": 169,
      "to": 6
    },
    {
      "from": 169,
      "to": 54
    },
    {
      "from": 169,
      "to": 162
    },
    {
      "from": 170,
      "to": 157
    },
    {
      "from": 170,
      "to": 164
    },
    {
      "from": 170,
      "to": 167
    },
    {
      "from": 171,
      "to": 65
    },
    {
      "from": 171,
      "to": 78
    },
    {
      "from": 172,
      "to": 69
    },
    {
      "from": 172,
      "to": 73
    },
    {
      "from": 172,
      "to": 171
    },
    {
      "from": 173,
      "to": 69
    },
    {
      "from": 173,
      "to": 172
    },
    {
      "from": 174,
      "to": 73
    },
    {
      "from": 174,
      "to": 171
    },
    {
      "from": 175,
      "to": 1
    },
    {
      "from": 175,
      "to": 94
    },
    {
      "from": 175,
      "to": 174
    },
    {
      "from": 176,
      "to": 5
    },
    {
      "from": 176,
      "to": 149
    },
    {
      "from": 176,
      "to": 173
    },
    {
      "from": 177,
      "to": 6
    },
    {
      "from": 177,
      "to": 69
    },
    {
      "from": 177,
      "to": 171
    },
    {
      "from": 178,
      "to": 6
    },
    {
      "from": 178,
      "to": 94
    },
    {
      "from": 178,
      "to": 175
    },
    {
      "from": 179,
      "to": 85
    },
    {
      "from": 179,
      "to": 178
    },
    {
      "from": 180,
      "to": 6
    },
    {
      "from": 180,
      "to": 175
    },
    {
      "from": 181,
      "to": 69
    },
    {
      "from": 181,
      "to": 180
    },
    {
      "from": 182,
      "to": 181
    },
    {
      "from": 183,
      "to": 176
    },
    {
      "from": 183,
      "to": 182
    },
    {
      "from": 184,
      "to": 157
    },
    {
      "from": 184,
      "to": 182
    },
    {
      "from": 185,
      "to": 93
    },
    {
      "from": 185,
      "to": 178
    },
    {
      "from": 186,
      "to": 176
    },
    {
      "from": 186,
      "to": 185
    },
    {
      "from": 187,
      "to": 164
    },
    {
      "from": 187,
      "to": 183
    },
    {
      "from": 187,
      "to": 186
    },
    {
      "from": 188,
      "to": 5
    },
    {
      "from": 188,
      "to": 15
    },
    {
      "from": 189,
      "to": 15
    },
    {
      "from": 189,
      "to": 176
    },
    {
      "from": 189,
      "to": 188
    },
    {
      "from": 190,
      "to": 54
    },
    {
      "from": 190,
      "to": 176
    },
    {
      "from": 191,
      "to": 83
    },
    {
      "from": 191,
      "to": 161
    },
    {
      "from": 191,
      "to": 171
    },
    {
      "from": 192,
      "to": 14
    },
    {
      "from": 192,
      "to": 191
    },
    {
      "from": 193,
      "to": 161
    },
    {
      "from": 193,
      "to": 192
    },
    {
      "from": 194,
      "to": 43
    },
    {
      "from": 194,
      "to": 191
    },
    {
      "from": 195,
      "to": 47
    },
    {
      "from": 195,
      "to": 194
    },
    {
      "from": 196,
      "to": 1
    },
    {
      "from": 196,
      "to": 83
    },
    {
      "from": 196,
      "to": 195
    },
    {
      "from": 197,
      "to": 87
    },
    {
      "from": 197,
      "to": 99
    },
    {
      "from": 197,
      "to": 196
    },
    {
      "from": 198,
      "to": 175
    },
    {
      "from": 198,
      "to": 196
    },
    {
      "from": 199,
      "to": 16
    },
    {
      "from": 199,
      "to": 73
    },
    {
      "from": 199,
      "to": 197
    },
    {
      "from": 200,
      "to": 171
    },
    {
      "from": 200,
      "to": 192
    },
    {
      "from": 200,
      "to": 198
    },
    {
      "from": 201,
      "to": 178
    },
    {
      "from": 201,
      "to": 187
    },
    {
      "from": 201,
      "to": 200
    },
    {
      "from": 202,
      "to": 54
    },
    {
      "from": 202,
      "to": 190
    },
    {
      "from": 202,
      "to": 200
    },
    {
      "from": 203,
      "to": 131
    },
    {
      "from": 203,
      "to": 192
    },
    {
      "from": 203,
      "to": 197
    },
    {
      "from": 204,
      "to": 132
    },
    {
      "from": 204,
      "to": 137
    },
    {
      "from": 204,
      "to": 203
    },
    {
      "from": 205,
      "to": 115
    },
    {
      "from": 205,
      "to": 166
    },
    {
      "from": 205,
      "to": 203
    },
    {
      "from": 206,
      "to": 134
    },
    {
      "from": 206,
      "to": 167
    },
    {
      "from": 206,
      "to": 194
    },
    {
      "from": 207,
      "to": 36
    },
    {
      "from": 207,
      "to": 168
    },
    {
      "from": 207,
      "to": 206
    },
    {
      "from": 208,
      "to": 6
    },
    {
      "from": 208,
      "to": 195
    },
    {
      "from": 208,
      "to": 206
    },
    {
      "from": 209,
      "to": 188
    },
    {
      "from": 209,
      "to": 189
    },
    {
      "from": 209,
      "to": 192
    },
    {
      "from": 210,
      "to": 208
    },
    {
      "from": 210,
      "to": 209
    },
    {
      "from": 211,
      "to": 9
    },
    {
      "from": 211,
      "to": 171
    },
    {
      "from": 212,
      "to": 20
    },
    {
      "from": 212,
      "to": 211
    },
    {
      "from": 213,
      "to": 67
    },
    {
      "from": 213,
      "to": 172
    },
    {
      "from": 213,
      "to": 212
    },
    {
      "from": 214,
      "to": 78
    },
    {
      "from": 214,
      "to": 213
    },
    {
      "from": 215,
      "to": 66
    },
    {
      "from": 215,
      "to": 85
    },
    {
      "from": 215,
      "to": 213
    },
    {
      "from": 216,
      "to": 92
    },
    {
      "from": 216,
      "to": 215
    },
    {
      "from": 217,
      "to": 126
    },
    {
      "from": 217,
      "to": 166
    },
    {
      "from": 217,
      "to": 215
    },
    {
      "from": 218,
      "to": 94
    },
    {
      "from": 218,
      "to": 175
    },
    {
      "from": 218,
      "to": 215
    },
    {
      "from": 219,
      "to": 68
    },
    {
      "from": 219,
      "to": 214
    },
    {
      "from": 219,
      "to": 218
    },
    {
      "from": 220,
      "to": 83
    },
    {
      "from": 220,
      "to": 218
    },
    {
      "from": 221,
      "to": 127
    },
    {
      "from": 221,
      "to": 146
    },
    {
      "from": 221,
      "to": 218
    },
    {
      "from": 222,
      "to": 178
    },
    {
      "from": 222,
      "to": 211
    },
    {
      "from": 223,
      "to": 199
    },
    {
      "from": 223,
      "to": 214
    },
    {
      "from": 223,
      "to": 222
    },
    {
      "from": 224,
      "to": 12
    },
    {
      "from": 224,
      "to": 211
    },
    {
      "from": 224,
      "to": 215
    },
    {
      "from": 225,
      "to": 87
    },
    {
      "from": 225,
      "to": 215
    },
    {
      "from": 225,
      "to": 224
    },
    {
      "from": 226,
      "to": 185
    },
    {
      "from": 226,
      "to": 225
    },
    {
      "from": 227,
      "to": 190
    },
    {
      "from": 227,
      "to": 211
    },
    {
      "from": 228,
      "to": 20
    },
    {
      "from": 228,
      "to": 176
    },
    {
      "from": 228,
      "to": 212
    },
    {
      "from": 229,
      "to": 18
    },
    {
      "from": 229,
      "to": 108
    },
    {
      "from": 229,
      "to": 131
    },
    {
      "from": 230,
      "to": 43
    },
    {
      "from": 230,
      "to": 194
    },
    {
      "from": 230,
      "to": 229
    },
    {
      "from": 231,
      "to": 113
    },
    {
      "from": 231,
      "to": 230
    },
    {
      "from": 232,
      "to": 12
    },
    {
      "from": 232,
      "to": 208
    },
    {
      "from": 232,
      "to": 230
    },
    {
      "from": 233,
      "to": 61
    },
    {
      "from": 233,
      "to": 208
    },
    {
      "from": 233,
      "to": 230
    },
    {
      "from": 234,
      "to": 52
    },
    {
      "from": 234,
      "to": 170
    },
    {
      "from": 234,
      "to": 233
    },
    {
      "from": 235,
      "to": 175
    },
    {
      "from": 235,
      "to": 220
    },
    {
      "from": 235,
      "to": 234
    },
    {
      "from": 236,
      "to": 179
    },
    {
      "from": 236,
      "to": 228
    },
    {
      "from": 236,
      "to": 235
    },
    {
      "from": 237,
      "to": 88
    },
    {
      "from": 237,
      "to": 108
    },
    {
      "from": 237,
      "to": 183
    },
    {
      "from": 237,
      "to": 229
    },
    {
      "from": 238,
      "to": 130
    },
    {
      "from": 238,
      "to": 145
    },
    {
      "from": 238,
      "to": 190
    },
    {
      "from": 238,
      "to": 231
    },
    {
      "from": 239,
      "to": 204
    },
    {
      "from": 239,
      "to": 210
    },
    {
      "from": 239,
      "to": 232
    },
    {
      "from": 239,
      "to": 234
    },
    {
      "from": 240,
      "to": 217
    },
    {
      "from": 240,
      "to": 223
    },
    {
      "from": 240,
      "to": 226
    },
    {
      "from": 240,
      "to": 236
    },
    {
      "from": 240,
      "to": 239
    }
  ]
}