{"id":100283,"date":"2025-03-06T06:27:41","date_gmt":"2025-03-06T02:57:41","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/cai-ji-bai-du-zhi-shu-1n1j\/"},"modified":"2025-03-06T06:27:41","modified_gmt":"2025-03-06T02:57:41","slug":"cai-ji-bai-du-zhi-shu-1n1j","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/cai-ji-bai-du-zhi-shu-1n1j\/","title":{"rendered":"\u0641\u0647\u0631\u0633\u062a Baidu \u0631\u0627 \u062c\u0645\u0639 \u06a9\u0646\u06cc\u062f"},"content":{"rendered":"<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight python\"><code><span class=\"sh\">\"\"\"<\/span><span class=\"s\">\n\u767e\u5ea6\u6307\u6570\u722c\u866b 2025\u5e743\u6708\n<\/span><span class=\"sh\">\"\"\"<\/span>\n<span class=\"kn\">import<\/span> <span class=\"n\">json<\/span>\n<span class=\"kn\">from<\/span> <span class=\"n\">traceback<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">format_exc<\/span>\n<span class=\"kn\">import<\/span> <span class=\"n\">time<\/span>\n\n<span class=\"kn\">import<\/span> <span class=\"n\">requests<\/span>\n<span class=\"kn\">from<\/span> <span class=\"n\">datetime<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">datetime<\/span><span class=\"p\">,<\/span> <span class=\"n\">timedelta<\/span>\n<span class=\"kn\">import<\/span> <span class=\"n\">numpy<\/span> <span class=\"k\">as<\/span> <span class=\"n\">np<\/span>\n<span class=\"kn\">import<\/span> <span class=\"n\">pandas<\/span> <span class=\"k\">as<\/span> <span class=\"n\">pd<\/span>\n<span class=\"kn\">import<\/span> <span class=\"n\">random<\/span>\n<span class=\"kn\">from<\/span> <span class=\"n\">requests.exceptions<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">RequestException<\/span>\n\n<span class=\"n\">cookies_dict<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">BAIDUID_BFESS<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">03C87F7E8DAB230EF3CF68E2E4CCB7AC:FG=1<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">Hm_lvt_d101ea4d2a5c67dab98251f0b5de24dc<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">1740900295<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">HMACCOUNT<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">70309D756AB7564A<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">ppfuid<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">FOCoIC3q5fKa8fgJnwzbE0LGziLN3VHbX8wfShDP6RCsfXQp\/69CStRUAcn\/QmhIlFDxPrAc\/s5tJmCocrihdwitHd04Lvs3Nfz26Zt2holplnIKVacidp8Sue4dMTyfg65BJnOFhn1HthtSiwtygiD7piS4vjG\/W9dLb1VAdqNDdL9XRrl2Sg9NTB85NN+3O0V6uxgO+hV7+7wZFfXG0MSpuMmh7GsZ4C7fF\/kTgmssH+sfZC32dB1R3HtMdot\/48PoBcDFpTKpfBzr\/OZicPkAszoKx6tIpFl6mGV2OCZLSjlTHjWa30fvbP8FZaaPM+RpBohGNhMcqCHhVhtXpVObaDCHgWJZH3ZrTGYHmi7XJB9z3y2o8Kqxep5XBCsugNOW5C73e\/g54kuY4PKIS8TtlheGhftBTbUILzt33xSjQXz\/gJEgSYx1vUQMipXdSecr9yhMSRLVoFktEC1isB71ZYfNRps7I7heVMQ6naCvK\/S9Ff5RtLDcahg8QCqqP\/JUZA7BRBFh68uqDQax10gfXgGxCNf3Sx8e4KXUBrqV\/g3hEEf9luu8oPziRIwanIJY1XZupqPZgmfh8BLwT9YUuyc0u8RKTitzO23hSwGX7sI4U3M5cfLBwVX5m74NveYUNi7Li87S8ZbXy31eyxBDK4IiDGlt1VFsxDIz0RsVHZudegSJ4zYa95fLOW41HdqdlVsa4ORVPwaoYgWzWigT4KUSvejPWWbczD37o0JAMY0Xq\/mt7JbC+fPJzgUfL+4+FMXDRk2cSv9vAGlESpYON8OX4n9+9Iiz1Xhbaw4n3CtUvSh71zjHSVbOXva7HJMc4xeuRg7bfpEY\/vwboa87Mf4DRxb3AAPFSzwHIQsKUb2NhurFXPHTBQ0ZqOMmlY+ev7ywybLL8HzYMUKf7xXkuNYCZBWkNbmLJnCAaUcxvvi236pnhRAiCpqFQgkNJGbjymaHirV01jGyjdICWIu01rzx5KJW22MzZ0c8aSEaiiS5MGq2rHDxd+cheyqXoKDbFUOPsQE72\/a0kEWC2KhuPKLM9\/6dZ00isWP1M71YVK+GcriYXdSGsdTLua2Z4rsiMpSciOy0GtH0BDIaHROBNUIGus13vk3BD9zddjzj9ZJseUlzwEV+bscicwIjSCwQvM4e3xnzVzlld+zvYN0q7Yw+xx5u95PSoz+nO88s9TqjpS2CuGXeoK3JV0ZsrYL63KbB6FE0u0LGhMX2XqphVNhJG\/707P2GcCYlcR4=<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">BDUSS<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">ndtMC1BVXpUdFF6Z3NGTHVCZlRmTXJVSXN3WUZXSkpTUXg5NU1iZGRCNlJsZXRuSVFBQUFBJCQAAAAAAAAAAAEAAAAK5OqRyqLH6cPOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEIxGeRCMRnV<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">SIGNIN_UC<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">70a2711cf1d3d9b1a82d2f87d633bd8a04909129477oUCDVgDuFIWQq0I5Qh%2BRYVI211tn6l6RtVzEcHQHKEeV3UqjZrdEN2J58qMq3yI6SH4Pf5yaO3wsYp7rDl7owf8Vxw8nV7J6HDde92bSfNLB%2BLYSDn8mcJUeJZ9DvByeHYEh5HZIEmBqjEW9Kp1nhY39kd0%2FMKxlLMEZywpREcfeqkBuNDImGT1swOphjUr0m7yoFRuoRONhZO0DhIUp8qMp%2BI%2BGZ9URB2%2FDv3g%2FwZ0nXnjrScjtkdIga7hBOF4Os4RsqXflHU7INYd10uoQ2Ecn99qPwcD5%2BuKJ7%2BtRR94%3D59476045678983651647832308115528<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">__cas__rn__<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">490912947<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">__cas__st__212<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">eb761014eef2d40b7c2bad261c6098e983f5ecc9a335b83a0f261f17f01cab78142cd91d640c0bff5197630b<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">__cas__id__212<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">40927145<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">CPTK_212<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">1776632285<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">CPID_212<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">40927145<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">Hm_lpvt_d101ea4d2a5c67dab98251f0b5de24dc<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">1740900504<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">BDUSS_BFESS<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">ndtMC1BVXpUdFF6Z3NGTHVCZlRmTXJVSXN3WUZXSkpTUXg5NU1iZGRCNlJsZXRuSVFBQUFBJCQAAAAAAAAAAAEAAAAK5OqRyqLH6cPOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEIxGeRCMRnV<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">bdindexid<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">jcohnli710phtu4po08tnl0o33<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">ab_sr<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">1.0.1_MTk4MzQ0NWIxNmJjZGNiODQzM2I2OGU2MjY0M2ExODNhZmMwMjY4MjQ5YzJkM2IzZTZjNTc1ODA1ZDdkNmFhM2QyZDMyNWZkMWRmNGMyZmNjYjFiMTJiYzgwMzc5YzA5ZDVkM2U1M2ZiNTdkN2VlZWY0ODZiNmE1MTg3Y2YzZjVhYWU5ZDZhZmIyMGY2ZWQwMzM5ODM2ZTI3ODY5Nzk5ZQ==<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">RT<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">z=1&amp;dm=baidu.com&amp;si=f3786353-627c-486d-b8e5-ea5d83dc0735&amp;ss=m7rb5t0k&amp;sl=6&amp;tt=p5z&amp;bcn=https%3A%2F%2Ffclog.baidu.com%2Flog%2Fweirwood%3Ftype%3Dperf&amp;ld=6czl<\/span><span class=\"sh\">\"<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"n\">credential<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">cipherText<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">1740888411355_1740901282164_aLrE9Za0dpKtlO3CQw1IR\/Yz3hP8cGXzHI\/2BnYqUk5XRMPS4pr5kfk3slC7+G60AS9KjhhlCPNuQnqbFhpZS9Z7MUVTxUeQ8XlgGhrmV+FapK3+nQuTdrm1pz8Jy5qhWO0pOhQyUqv\/AR5RFI0hKsasKjMYDQfng+XPMhygTo0rCb3PLrFDflBQ1riNlJ7Bg8s6TfsE3OMaJPAQsjhaZlZO1bXUAhFIY0EMqIxq2DAkMVEatrHKmDbkb0f2NJw988jZkhDEZTAJ06iAXqSLbKnbF0bPCUIqaT\/a5yeqr2KtCwbJYH4flHQSoThN40a6t\/XiyTqUc1Mdds6w27Q\/qOyR+nPe8978fEsEB3UssJ9LPc62xsjzLmY1x5qH7eA\/j7eJAgbbWVvYW8H\/4N3iaauKg0D1F8NqUHMGoGVpAQSj0\/HLx5pUebCoFBVBnbA2kMYD8kvavD1WzPEMte2sp2uhlSGB4IIDMkqz13eaIsc=<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n    <span class=\"sh\">\"<\/span><span class=\"s\">cookie_BDUSS<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"n\">cookies_dict<\/span><span class=\"p\">[<\/span><span class=\"sh\">'<\/span><span class=\"s\">BDUSS<\/span><span class=\"sh\">'<\/span><span class=\"p\">]<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"k\">def<\/span> <span class=\"nf\">generate_http_headers<\/span><span class=\"p\">(<\/span><span class=\"n\">credential<\/span><span class=\"p\">):<\/span>\n    <span class=\"n\">http_headers<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{<\/span>\n        <span class=\"sh\">'<\/span><span class=\"s\">Cookie<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"sh\">'<\/span><span class=\"s\">BDUSS=<\/span><span class=\"sh\">'<\/span> <span class=\"o\">+<\/span> <span class=\"n\">credential<\/span><span class=\"p\">[<\/span><span class=\"sh\">\"<\/span><span class=\"s\">cookie_BDUSS<\/span><span class=\"sh\">\"<\/span><span class=\"p\">],<\/span>\n        <span class=\"sh\">'<\/span><span class=\"s\">Cipher-Text<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"n\">credential<\/span><span class=\"p\">[<\/span><span class=\"sh\">\"<\/span><span class=\"s\">cipherText<\/span><span class=\"sh\">\"<\/span><span class=\"p\">],<\/span>\n        <span class=\"sh\">'<\/span><span class=\"s\">Accept<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"sh\">'<\/span><span class=\"s\">application\/json, text\/plain, *\/*<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\n        <span class=\"sh\">'<\/span><span class=\"s\">Accept-Encoding<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"sh\">'<\/span><span class=\"s\">gzip, deflate, br<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\n        <span class=\"sh\">'<\/span><span class=\"s\">Accept-Language<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"sh\">'<\/span><span class=\"s\">zh-CN,zh;q=0.9<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\n        <span class=\"sh\">'<\/span><span class=\"s\">Connection<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"sh\">'<\/span><span class=\"s\">keep-alive<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\n        <span class=\"sh\">'<\/span><span class=\"s\">Referer<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"sh\">'<\/span><span class=\"s\">https:\/\/index.baidu.com\/v2\/main\/index.html<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\n        <span class=\"sh\">'<\/span><span class=\"s\">Host<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"sh\">'<\/span><span class=\"s\">index.baidu.com<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\n        <span class=\"sh\">'<\/span><span class=\"s\">User-Agent<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"sh\">'<\/span><span class=\"s\">Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/58.0.3029.110 Safari\/537.3<\/span><span class=\"sh\">'<\/span>\n    <span class=\"p\">}<\/span>\n    <span class=\"k\">return<\/span> <span class=\"n\">http_headers<\/span>\n\n\n<span class=\"k\">def<\/span> <span class=\"nf\">calculate_yearly_averages<\/span><span class=\"p\">(<\/span><span class=\"n\">start_date<\/span><span class=\"p\">,<\/span> <span class=\"n\">end_date<\/span><span class=\"p\">,<\/span> <span class=\"n\">data_series<\/span><span class=\"p\">):<\/span>\n    <span class=\"c1\"># Convert the start and end dates to datetime objects\n<\/span>    <span class=\"n\">start<\/span> <span class=\"o\">=<\/span> <span class=\"n\">datetime<\/span><span class=\"p\">.<\/span><span class=\"nf\">strptime<\/span><span class=\"p\">(<\/span><span class=\"n\">start_date<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">%Y-%m-%d<\/span><span class=\"sh\">'<\/span><span class=\"p\">)<\/span>\n    <span class=\"n\">end<\/span> <span class=\"o\">=<\/span> <span class=\"n\">datetime<\/span><span class=\"p\">.<\/span><span class=\"nf\">strptime<\/span><span class=\"p\">(<\/span><span class=\"n\">end_date<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">%Y-%m-%d<\/span><span class=\"sh\">'<\/span><span class=\"p\">)<\/span>\n    <span class=\"n\">days_span<\/span> <span class=\"o\">=<\/span> <span class=\"p\">(<\/span><span class=\"n\">end<\/span> <span class=\"o\">-<\/span> <span class=\"n\">start<\/span><span class=\"p\">).<\/span><span class=\"n\">days<\/span> <span class=\"o\">+<\/span> <span class=\"mi\">1<\/span>\n\n    <span class=\"c1\"># Split the data series into a list and replace empty strings with '0'\n<\/span>    <span class=\"n\">data_points<\/span> <span class=\"o\">=<\/span> <span class=\"n\">data_series<\/span><span class=\"p\">.<\/span><span class=\"nf\">split<\/span><span class=\"p\">(<\/span><span class=\"sh\">'<\/span><span class=\"s\">,<\/span><span class=\"sh\">'<\/span><span class=\"p\">)<\/span>\n    <span class=\"n\">data_points<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span><span class=\"sh\">'<\/span><span class=\"s\">0<\/span><span class=\"sh\">'<\/span> <span class=\"k\">if<\/span> <span class=\"n\">point<\/span> <span class=\"o\">==<\/span> <span class=\"sh\">''<\/span> <span class=\"k\">else<\/span> <span class=\"n\">point<\/span> <span class=\"k\">for<\/span> <span class=\"n\">point<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">data_points<\/span><span class=\"p\">]<\/span>\n    <span class=\"n\">data_points<\/span> <span class=\"o\">=<\/span> <span class=\"n\">np<\/span><span class=\"p\">.<\/span><span class=\"nf\">array<\/span><span class=\"p\">(<\/span><span class=\"n\">data_points<\/span><span class=\"p\">,<\/span> <span class=\"n\">dtype<\/span><span class=\"o\">=<\/span><span class=\"nb\">float<\/span><span class=\"p\">)<\/span>\n\n    <span class=\"k\">if<\/span> <span class=\"n\">days_span<\/span> <span class=\"o\">&lt;=<\/span> <span class=\"mi\">366<\/span><span class=\"p\">:<\/span>\n        <span class=\"n\">dates<\/span> <span class=\"o\">=<\/span> <span class=\"n\">pd<\/span><span class=\"p\">.<\/span><span class=\"nf\">date_range<\/span><span class=\"p\">(<\/span><span class=\"n\">start<\/span><span class=\"p\">,<\/span> <span class=\"n\">periods<\/span><span class=\"o\">=<\/span><span class=\"nf\">len<\/span><span class=\"p\">(<\/span><span class=\"n\">data_points<\/span><span class=\"p\">))<\/span>\n    <span class=\"k\">else<\/span><span class=\"p\">:<\/span>\n        <span class=\"n\">weeks_span<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">len<\/span><span class=\"p\">(<\/span><span class=\"n\">data_points<\/span><span class=\"p\">)<\/span>\n        <span class=\"n\">dates<\/span> <span class=\"o\">=<\/span> <span class=\"n\">pd<\/span><span class=\"p\">.<\/span><span class=\"nf\">date_range<\/span><span class=\"p\">(<\/span><span class=\"n\">start<\/span><span class=\"p\">,<\/span> <span class=\"n\">periods<\/span><span class=\"o\">=<\/span><span class=\"n\">weeks_span<\/span><span class=\"p\">,<\/span> <span class=\"n\">freq<\/span><span class=\"o\">=<\/span><span class=\"sh\">'<\/span><span class=\"s\">W<\/span><span class=\"sh\">'<\/span><span class=\"p\">)<\/span>\n\n    <span class=\"c1\"># Create a DataFrame with the dates and data points\n<\/span>    <span class=\"n\">df<\/span> <span class=\"o\">=<\/span> <span class=\"n\">pd<\/span><span class=\"p\">.<\/span><span class=\"nc\">DataFrame<\/span><span class=\"p\">({<\/span><span class=\"sh\">'<\/span><span class=\"s\">Date<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"n\">dates<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">Data<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"n\">data_points<\/span><span class=\"p\">})<\/span>\n    <span class=\"n\">df<\/span><span class=\"p\">.<\/span><span class=\"nf\">set_index<\/span><span class=\"p\">(<\/span><span class=\"sh\">'<\/span><span class=\"s\">Date<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"n\">inplace<\/span><span class=\"o\">=<\/span><span class=\"bp\">True<\/span><span class=\"p\">)<\/span>\n\n    <span class=\"c1\"># Calculate the yearly average\n<\/span>    <span class=\"n\">yearly_averages<\/span> <span class=\"o\">=<\/span> <span class=\"n\">df<\/span><span class=\"p\">.<\/span><span class=\"nf\">resample<\/span><span class=\"p\">(<\/span><span class=\"sh\">'<\/span><span class=\"s\">YE<\/span><span class=\"sh\">'<\/span><span class=\"p\">).<\/span><span class=\"nf\">mean<\/span><span class=\"p\">().<\/span><span class=\"nf\">reset_index<\/span><span class=\"p\">()<\/span>\n    <span class=\"n\">yearly_averages<\/span><span class=\"p\">[<\/span><span class=\"sh\">'<\/span><span class=\"s\">Year<\/span><span class=\"sh\">'<\/span><span class=\"p\">]<\/span> <span class=\"o\">=<\/span> <span class=\"n\">yearly_averages<\/span><span class=\"p\">[<\/span><span class=\"sh\">'<\/span><span class=\"s\">Date<\/span><span class=\"sh\">'<\/span><span class=\"p\">].<\/span><span class=\"n\">dt<\/span><span class=\"p\">.<\/span><span class=\"n\">year<\/span>\n    <span class=\"n\">yearly_averages<\/span><span class=\"p\">.<\/span><span class=\"nf\">drop<\/span><span class=\"p\">(<\/span><span class=\"sh\">'<\/span><span class=\"s\">Date<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"n\">axis<\/span><span class=\"o\">=<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span> <span class=\"n\">inplace<\/span><span class=\"o\">=<\/span><span class=\"bp\">True<\/span><span class=\"p\">)<\/span>\n    <span class=\"n\">yearly_averages<\/span><span class=\"p\">.<\/span><span class=\"nf\">rename<\/span><span class=\"p\">(<\/span><span class=\"n\">columns<\/span><span class=\"o\">=<\/span><span class=\"p\">{<\/span><span class=\"sh\">'<\/span><span class=\"s\">Data<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span> <span class=\"sh\">'<\/span><span class=\"s\">Average<\/span><span class=\"sh\">'<\/span><span class=\"p\">},<\/span> <span class=\"n\">inplace<\/span><span class=\"o\">=<\/span><span class=\"bp\">True<\/span><span class=\"p\">)<\/span>\n    <span class=\"c1\"># Convert DataFrame to list of tuples (year, average)\n<\/span>    <span class=\"n\">yearly_averages_list<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">list<\/span><span class=\"p\">(<\/span><span class=\"n\">yearly_averages<\/span><span class=\"p\">.<\/span><span class=\"nf\">itertuples<\/span><span class=\"p\">(<\/span><span class=\"n\">index<\/span><span class=\"o\">=<\/span><span class=\"bp\">False<\/span><span class=\"p\">,<\/span> <span class=\"n\">name<\/span><span class=\"o\">=<\/span><span class=\"bp\">None<\/span><span class=\"p\">))<\/span>\n    <span class=\"nf\">print<\/span><span class=\"p\">(<\/span><span class=\"n\">yearly_averages_list<\/span><span class=\"p\">)<\/span>\n\n    <span class=\"k\">return<\/span> <span class=\"n\">yearly_averages_list<\/span>\n\n\n<span class=\"c1\"># \u89e3\u5bc6\n<\/span><span class=\"k\">def<\/span> <span class=\"nf\">decrypt<\/span><span class=\"p\">(<\/span><span class=\"n\">ptbk<\/span><span class=\"p\">,<\/span> <span class=\"n\">index_data<\/span><span class=\"p\">):<\/span>\n    <span class=\"n\">n<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">len<\/span><span class=\"p\">(<\/span><span class=\"n\">ptbk<\/span><span class=\"p\">)<\/span> <span class=\"o\">\/\/<\/span> <span class=\"mi\">2<\/span>\n    <span class=\"n\">a<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">dict<\/span><span class=\"p\">(<\/span><span class=\"nf\">zip<\/span><span class=\"p\">(<\/span><span class=\"n\">ptbk<\/span><span class=\"p\">[:<\/span><span class=\"n\">n<\/span><span class=\"p\">],<\/span> <span class=\"n\">ptbk<\/span><span class=\"p\">[<\/span><span class=\"n\">n<\/span><span class=\"p\">:]))<\/span>\n    <span class=\"k\">return<\/span> <span class=\"sh\">\"\"<\/span><span class=\"p\">.<\/span><span class=\"nf\">join<\/span><span class=\"p\">([<\/span><span class=\"n\">a<\/span><span class=\"p\">[<\/span><span class=\"n\">s<\/span><span class=\"p\">]<\/span> <span class=\"k\">for<\/span> <span class=\"n\">s<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">index_data<\/span><span class=\"p\">])<\/span>\n\n\n<span class=\"k\">def<\/span> <span class=\"nf\">keywords2json<\/span><span class=\"p\">(<\/span><span class=\"n\">keyword<\/span><span class=\"p\">):<\/span>\n    <span class=\"kn\">import<\/span> <span class=\"n\">json<\/span>\n    <span class=\"n\">converted_keywords<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[[{<\/span><span class=\"sh\">\"<\/span><span class=\"s\">name<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"n\">keyword<\/span><span class=\"p\">,<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">wordType<\/span><span class=\"sh\">\"<\/span><span class=\"p\">:<\/span> <span class=\"mi\">1<\/span><span class=\"p\">}]]<\/span>\n    <span class=\"c1\"># Convert the list of lists of dictionaries into a JSON string\n<\/span>    <span class=\"n\">json_string<\/span> <span class=\"o\">=<\/span> <span class=\"n\">json<\/span><span class=\"p\">.<\/span><span class=\"nf\">dumps<\/span><span class=\"p\">(<\/span><span class=\"n\">converted_keywords<\/span><span class=\"p\">,<\/span> <span class=\"n\">ensure_ascii<\/span><span class=\"o\">=<\/span><span class=\"bp\">False<\/span><span class=\"p\">)<\/span>\n    <span class=\"nf\">print<\/span><span class=\"p\">(<\/span><span class=\"n\">json_string<\/span><span class=\"p\">)<\/span>\n    <span class=\"k\">return<\/span> <span class=\"n\">json_string<\/span>\n\n<span class=\"c1\">#\n# def namely(keywords):\n#     return '+'.join(keywords)\n<\/span>\n\n<span class=\"k\">def<\/span> <span class=\"nf\">crawl_request<\/span><span class=\"p\">(<\/span><span class=\"n\">keyword<\/span><span class=\"p\">,<\/span> <span class=\"n\">startDate<\/span><span class=\"p\">,<\/span> <span class=\"n\">endDate<\/span><span class=\"p\">,<\/span> <span class=\"n\">regionCode<\/span><span class=\"p\">,<\/span> <span class=\"n\">credential<\/span><span class=\"p\">,<\/span> <span class=\"n\">expectedInterval<\/span><span class=\"p\">,<\/span> <span class=\"n\">autoSave<\/span><span class=\"p\">,<\/span> <span class=\"n\">regionName<\/span><span class=\"p\">,<\/span> <span class=\"n\">data_combine<\/span><span class=\"p\">):<\/span>\n    <span class=\"nf\">print<\/span><span class=\"p\">(<\/span><span class=\"sh\">'<\/span><span class=\"s\">\u6b63\u5728\u67e5\u8be2\uff1a<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"n\">keyword<\/span><span class=\"p\">,<\/span> <span class=\"n\">startDate<\/span><span class=\"p\">,<\/span> <span class=\"n\">endDate<\/span><span class=\"p\">,<\/span> <span class=\"n\">regionCode<\/span><span class=\"p\">)<\/span>\n    <span class=\"n\">words<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">keywords2json<\/span><span class=\"p\">(<\/span><span class=\"n\">keyword<\/span><span class=\"p\">)<\/span>\n\n    <span class=\"c1\"># \u7b2c\u4e00\u7ea7\u4ee5\u9017\u53f7\u5206\u9694\uff0c\u7b2c\u4e8c\u7ea7\u4ee5\u52a0\u53f7\u5206\u9694\n<\/span>    <span class=\"n\">testwordset<\/span> <span class=\"o\">=<\/span> <span class=\"n\">keyword<\/span>\n    <span class=\"n\">max_retries<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">3<\/span>  <span class=\"c1\"># \u6700\u5927\u91cd\u8bd5\u6b21\u6570\n<\/span>    <span class=\"n\">retries<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">0<\/span>  <span class=\"c1\"># \u5f53\u524d\u91cd\u8bd5\u6b21\u6570\n<\/span>\n    <span class=\"k\">while<\/span> <span class=\"n\">retries<\/span> <span class=\"o\">&lt;<\/span> <span class=\"n\">max_retries<\/span><span class=\"p\">:<\/span>\n        <span class=\"k\">try<\/span><span class=\"p\">:<\/span>\n            <span class=\"n\">url<\/span> <span class=\"o\">=<\/span> <span class=\"sa\">f<\/span><span class=\"sh\">'<\/span><span class=\"s\">https:\/\/index.baidu.com\/api\/AddWordApi\/checkWordsExists?word=<\/span><span class=\"si\">{<\/span><span class=\"n\">testwordset<\/span><span class=\"si\">}<\/span><span class=\"sh\">'<\/span>\n            <span class=\"n\">rsp<\/span> <span class=\"o\">=<\/span> <span class=\"n\">requests<\/span><span class=\"p\">.<\/span><span class=\"nf\">get<\/span><span class=\"p\">(<\/span><span class=\"n\">url<\/span><span class=\"p\">,<\/span> <span class=\"n\">headers<\/span><span class=\"o\">=<\/span><span class=\"nf\">generate_http_headers<\/span><span class=\"p\">(<\/span><span class=\"n\">credential<\/span><span class=\"p\">),<\/span> <span class=\"n\">timeout<\/span><span class=\"o\">=<\/span><span class=\"mi\">10<\/span><span class=\"p\">).<\/span><span class=\"nf\">json<\/span><span class=\"p\">()<\/span>\n            <span class=\"c1\"># \u82e5data\u7684result\u4e0d\u4e3a\u7a7a\uff0c\u5219\u8bf4\u660e\u5173\u952e\u8bcd\u4e0d\u5b58\u5728\uff0c\u62a5\u9519\u5e76\u9000\u51fa\n<\/span>            <span class=\"k\">if<\/span> <span class=\"n\">rsp<\/span><span class=\"p\">[<\/span><span class=\"sh\">'<\/span><span class=\"s\">data<\/span><span class=\"sh\">'<\/span><span class=\"p\">][<\/span><span class=\"sh\">'<\/span><span class=\"s\">result<\/span><span class=\"sh\">'<\/span><span class=\"p\">]:<\/span>\n                <span class=\"nf\">print<\/span><span class=\"p\">(<\/span><span class=\"sa\">f<\/span><span class=\"sh\">'<\/span><span class=\"si\">{<\/span><span class=\"n\">testwordset<\/span><span class=\"si\">}<\/span><span class=\"s\">\u5173\u952e\u8bcd\u4e0d\u5b58\u5728\u6216\u7ec4\u5408\u91cc\u6709\u4e0d\u5b58\u5728\u7684\u5173\u952e\u8bcd\uff0c\u8bf7\u68c0\u67e5<\/span><span class=\"sh\">'<\/span><span class=\"p\">)<\/span>\n                <span class=\"k\">return<\/span> <span class=\"o\">-<\/span><span class=\"mi\">1<\/span>\n\n            <span class=\"n\">url<\/span> <span class=\"o\">=<\/span> <span class=\"sa\">f<\/span><span class=\"sh\">'<\/span><span class=\"s\">http:\/\/index.baidu.com\/api\/SearchApi\/index?area=0&amp;word=<\/span><span class=\"si\">{<\/span><span class=\"n\">words<\/span><span class=\"si\">}<\/span><span class=\"s\">&amp;area=<\/span><span class=\"si\">{<\/span><span class=\"n\">regionCode<\/span><span class=\"si\">}<\/span><span class=\"s\">&amp;startDate=<\/span><span class=\"si\">{<\/span><span class=\"n\">startDate<\/span><span class=\"si\">}<\/span><span class=\"s\">&amp;endDate=<\/span><span class=\"si\">{<\/span><span class=\"n\">endDate<\/span><span class=\"si\">}<\/span><span class=\"sh\">'<\/span>\n            <span class=\"n\">rsp<\/span> <span class=\"o\">=<\/span> <span class=\"n\">requests<\/span><span class=\"p\">.<\/span><span class=\"nf\">get<\/span><span class=\"p\">(<\/span><span class=\"n\">url<\/span><span class=\"p\">,<\/span> <span class=\"n\">headers<\/span><span class=\"o\">=<\/span><span class=\"nf\">generate_http_headers<\/span><span class=\"p\">(<\/span><span class=\"n\">credential<\/span><span class=\"p\">),<\/span> <span class=\"n\">timeout<\/span><span class=\"o\">=<\/span><span class=\"mi\">10<\/span><span class=\"p\">).<\/span><span class=\"nf\">json<\/span><span class=\"p\">()<\/span>\n\n            <span class=\"c1\"># \u83b7\u53d6\u89e3\u5bc6\u79d8\u94a5\n<\/span>            <span class=\"n\">data<\/span> <span class=\"o\">=<\/span> <span class=\"n\">rsp<\/span><span class=\"p\">[<\/span><span class=\"sh\">'<\/span><span class=\"s\">data<\/span><span class=\"sh\">'<\/span><span class=\"p\">][<\/span><span class=\"sh\">'<\/span><span class=\"s\">userIndexes<\/span><span class=\"sh\">'<\/span><span class=\"p\">]<\/span>\n            <span class=\"n\">uniqid<\/span> <span class=\"o\">=<\/span> <span class=\"n\">rsp<\/span><span class=\"p\">[<\/span><span class=\"sh\">'<\/span><span class=\"s\">data<\/span><span class=\"sh\">'<\/span><span class=\"p\">][<\/span><span class=\"sh\">'<\/span><span class=\"s\">uniqid<\/span><span class=\"sh\">'<\/span><span class=\"p\">]<\/span>\n            <span class=\"n\">url<\/span> <span class=\"o\">=<\/span> <span class=\"sa\">f<\/span><span class=\"sh\">'<\/span><span class=\"s\">https:\/\/index.baidu.com\/Interface\/ptbk?uniqid=<\/span><span class=\"si\">{<\/span><span class=\"n\">uniqid<\/span><span class=\"si\">}<\/span><span class=\"sh\">'<\/span>\n            <span class=\"n\">ptbk<\/span> <span class=\"o\">=<\/span> <span class=\"n\">requests<\/span><span class=\"p\">.<\/span><span class=\"nf\">get<\/span><span class=\"p\">(<\/span><span class=\"n\">url<\/span><span class=\"p\">,<\/span> <span class=\"n\">headers<\/span><span class=\"o\">=<\/span><span class=\"nf\">generate_http_headers<\/span><span class=\"p\">(<\/span><span class=\"n\">credential<\/span><span class=\"p\">),<\/span> <span class=\"n\">timeout<\/span><span class=\"o\">=<\/span><span class=\"mi\">10<\/span><span class=\"p\">).<\/span><span class=\"nf\">json<\/span><span class=\"p\">()[<\/span><span class=\"sh\">'<\/span><span class=\"s\">data<\/span><span class=\"sh\">'<\/span><span class=\"p\">]<\/span>\n\n            <span class=\"c1\"># \u6570\u636e\u89e3\u5bc6\n<\/span>            <span class=\"n\">res<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span><span class=\"mi\">0<\/span> <span class=\"k\">for<\/span> <span class=\"n\">_<\/span> <span class=\"ow\">in<\/span> <span class=\"nf\">range<\/span><span class=\"p\">(<\/span><span class=\"nf\">len<\/span><span class=\"p\">(<\/span><span class=\"n\">data<\/span><span class=\"p\">))]<\/span>\n            <span class=\"k\">for<\/span> <span class=\"n\">i<\/span> <span class=\"ow\">in<\/span> <span class=\"nf\">range<\/span><span class=\"p\">(<\/span><span class=\"nf\">len<\/span><span class=\"p\">(<\/span><span class=\"n\">data<\/span><span class=\"p\">)):<\/span>\n                <span class=\"n\">index_data<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">decrypt<\/span><span class=\"p\">(<\/span><span class=\"n\">ptbk<\/span><span class=\"p\">,<\/span> <span class=\"n\">data<\/span><span class=\"p\">[<\/span><span class=\"n\">i<\/span><span class=\"p\">][<\/span><span class=\"sh\">'<\/span><span class=\"s\">all<\/span><span class=\"sh\">'<\/span><span class=\"p\">][<\/span><span class=\"sh\">'<\/span><span class=\"s\">data<\/span><span class=\"sh\">'<\/span><span class=\"p\">])<\/span>\n                <span class=\"n\">yearly_averages<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">calculate_yearly_averages<\/span><span class=\"p\">(<\/span><span class=\"n\">startDate<\/span><span class=\"p\">,<\/span> <span class=\"n\">endDate<\/span><span class=\"p\">,<\/span> <span class=\"n\">index_data<\/span><span class=\"p\">)<\/span>\n                <span class=\"k\">for<\/span> <span class=\"n\">tuple_item<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">yearly_averages<\/span><span class=\"p\">:<\/span>\n                    <span class=\"n\">index_d<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">round<\/span><span class=\"p\">(<\/span><span class=\"n\">tuple_item<\/span><span class=\"p\">[<\/span><span class=\"mi\">0<\/span><span class=\"p\">],<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\n                    <span class=\"n\">year<\/span> <span class=\"o\">=<\/span> <span class=\"n\">tuple_item<\/span><span class=\"p\">[<\/span><span class=\"mi\">1<\/span><span class=\"p\">]<\/span>\n                    <span class=\"k\">if<\/span> <span class=\"n\">year<\/span> <span class=\"o\">&gt;<\/span> <span class=\"mi\">2022<\/span><span class=\"p\">:<\/span>\n                        <span class=\"k\">continue<\/span>\n                    <span class=\"k\">if<\/span> <span class=\"n\">year<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">data_combine<\/span><span class=\"p\">:<\/span>\n                        <span class=\"n\">data_combine<\/span><span class=\"p\">[<\/span><span class=\"n\">year<\/span><span class=\"p\">].<\/span><span class=\"nf\">append<\/span><span class=\"p\">(<\/span><span class=\"n\">index_d<\/span><span class=\"p\">)<\/span>\n                    <span class=\"k\">else<\/span><span class=\"p\">:<\/span>\n                        <span class=\"n\">data_combine<\/span><span class=\"p\">[<\/span><span class=\"n\">year<\/span><span class=\"p\">]<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span><span class=\"n\">year<\/span><span class=\"p\">,<\/span> <span class=\"n\">regionName<\/span><span class=\"p\">,<\/span> <span class=\"n\">index_d<\/span><span class=\"p\">]<\/span>\n            <span class=\"k\">return<\/span> <span class=\"n\">res<\/span>\n        <span class=\"k\">except<\/span> <span class=\"nb\">Exception<\/span> <span class=\"k\">as<\/span> <span class=\"n\">e<\/span><span class=\"p\">:<\/span>\n            <span class=\"nf\">print<\/span><span class=\"p\">(<\/span><span class=\"sa\">f<\/span><span class=\"sh\">'<\/span><span class=\"s\">\u8bf7\u6c42\u5931\u8d25\uff0c\u9519\u8bef\u4fe1\u606f\uff1a<\/span><span class=\"si\">{<\/span><span class=\"n\">e<\/span><span class=\"si\">}<\/span><span class=\"sh\">'<\/span><span class=\"p\">)<\/span>\n            <span class=\"n\">retries<\/span> <span class=\"o\">+=<\/span> <span class=\"mi\">1<\/span>\n            <span class=\"nf\">print<\/span><span class=\"p\">(<\/span><span class=\"sa\">f<\/span><span class=\"sh\">'<\/span><span class=\"s\">\u91cd\u8bd5\u7b2c<\/span><span class=\"si\">{<\/span><span class=\"n\">retries<\/span><span class=\"si\">}<\/span><span class=\"s\">\u6b21...<\/span><span class=\"sh\">'<\/span><span class=\"p\">)<\/span>\n            <span class=\"n\">time<\/span><span class=\"p\">.<\/span><span class=\"nf\">sleep<\/span><span class=\"p\">(<\/span><span class=\"n\">random<\/span><span class=\"p\">.<\/span><span class=\"nf\">randint<\/span><span class=\"p\">(<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span> <span class=\"mi\">3<\/span><span class=\"p\">))<\/span>  <span class=\"c1\"># \u5728\u91cd\u8bd5\u524d\u7b49\u5f85\u4e00\u6bb5\u65f6\u95f4\n<\/span>    <span class=\"k\">if<\/span> <span class=\"n\">retries<\/span> <span class=\"o\">==<\/span> <span class=\"n\">max_retries<\/span><span class=\"p\">:<\/span>\n        <span class=\"nf\">print<\/span><span class=\"p\">(<\/span><span class=\"sa\">f<\/span><span class=\"sh\">'<\/span><span class=\"s\">\u8bf7\u6c42\u5931\u8d25\u6b21\u6570\u8fc7\u591a\uff0c\u5df2\u8fbe\u5230\u6700\u5927\u91cd\u8bd5\u6b21\u6570<\/span><span class=\"si\">{<\/span><span class=\"n\">max_retries<\/span><span class=\"si\">}<\/span><span class=\"s\">\uff0c\u8df3\u8fc7\u5f53\u524d\u8fde\u63a5<\/span><span class=\"sh\">'<\/span><span class=\"p\">)<\/span>\n        <span class=\"k\">return<\/span> <span class=\"o\">-<\/span><span class=\"mi\">1<\/span>\n\n\n<span class=\"c1\"># regions = {}\n<\/span><span class=\"n\">provinces<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{<\/span>\n            <span class=\"mi\">901<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5c71\u4e1c<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">902<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u8d35\u5dde<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">903<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u6c5f\u897f<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">904<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u91cd\u5e86<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">905<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5185\u8499\u53e4<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">906<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u6e56\u5317<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">907<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u8fbd\u5b81<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">908<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u6e56\u5357<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">909<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u798f\u5efa<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">910<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u4e0a\u6d77<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">911<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5317\u4eac<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">912<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5e7f\u897f<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">913<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5e7f\u4e1c<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">914<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u56db\u5ddd<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">915<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u4e91\u5357<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">916<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u6c5f\u82cf<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">917<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u6d59\u6c5f<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">918<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u9752\u6d77<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">919<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5b81\u590f<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">920<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u6cb3\u5317<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">921<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u9ed1\u9f99\u6c5f<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">922<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5409\u6797<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">923<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5929\u6d25<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">924<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u9655\u897f<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">925<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u7518\u8083<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">926<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u65b0\u7586<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">927<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u6cb3\u5357<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">928<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5b89\u5fbd<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">929<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u5c71\u897f<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">930<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u6d77\u5357<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">931<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u53f0\u6e7e<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"c1\"># 932: \"\u897f\u85cf\",\n<\/span>            <span class=\"mi\">933<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u9999\u6e2f<\/span><span class=\"sh\">\"<\/span><span class=\"p\">,<\/span>\n            <span class=\"mi\">934<\/span><span class=\"p\">:<\/span> <span class=\"sh\">\"<\/span><span class=\"s\">\u6fb3\u95e8<\/span><span class=\"sh\">\"<\/span>\n        <span class=\"p\">}<\/span>\n\n<span class=\"n\">regions<\/span> <span class=\"o\">=<\/span> <span class=\"n\">provinces<\/span>\n\n<span class=\"k\">def<\/span> <span class=\"nf\">crawl<\/span><span class=\"p\">(<\/span><span class=\"n\">regionCode<\/span><span class=\"p\">,<\/span> <span class=\"n\">credential<\/span><span class=\"p\">,<\/span> <span class=\"n\">expectedInterval<\/span><span class=\"p\">,<\/span> <span class=\"n\">autoSave<\/span><span class=\"p\">,<\/span> <span class=\"n\">regionName<\/span><span class=\"p\">,<\/span> <span class=\"n\">data_combine<\/span><span class=\"p\">):<\/span>\n    <span class=\"c1\"># \u83b7\u53d611\u5e74\u523022\u5e74\u7684\u6570\u636e\n<\/span>    <span class=\"n\">startDate<\/span> <span class=\"o\">=<\/span> <span class=\"sh\">'<\/span><span class=\"s\">2011-01-01<\/span><span class=\"sh\">'<\/span>\n    <span class=\"n\">endDate<\/span> <span class=\"o\">=<\/span> <span class=\"sh\">'<\/span><span class=\"s\">2022-12-31<\/span><span class=\"sh\">'<\/span>\n    <span class=\"c1\"># \u6e05\u6d17\u5173\u952e\u8bcd\n<\/span>    <span class=\"n\">keywords<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span><span class=\"sh\">'<\/span><span class=\"s\">\u7b2c\u4e09\u65b9\u652f\u4ed8<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u5728\u7ebf\u652f\u4ed8<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u79fb\u52a8\u652f\u4ed8<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u7f51\u8d37<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u4e92\u8054\u7f51\u7406\u8d22<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u4e92\u8054\u7f51\u4fdd\u9669<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u5728\u7ebf\u7406\u8d22<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u7535\u5b50\u94f6\u884c<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u7f51\u94f6<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u5927\u6570\u636e<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u4e91\u8ba1\u7b97<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u4eba\u5de5\u667a\u80fd<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u533a\u5757\u94fe<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">\u751f\u7269\u8bc6\u522b<\/span><span class=\"sh\">'<\/span><span class=\"p\">]<\/span>\n\n    <span class=\"c1\"># res = {regionCode: []}\n<\/span>    <span class=\"k\">for<\/span> <span class=\"n\">keyword<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">keywords<\/span><span class=\"p\">:<\/span>\n        <span class=\"k\">if<\/span> <span class=\"n\">regionCode<\/span> <span class=\"o\">!=<\/span> <span class=\"sh\">'<\/span><span class=\"s\">999<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span>\n            <span class=\"k\">try<\/span><span class=\"p\">:<\/span>\n                <span class=\"nf\">crawl_request<\/span><span class=\"p\">(<\/span><span class=\"n\">keyword<\/span><span class=\"p\">,<\/span> <span class=\"n\">startDate<\/span><span class=\"p\">,<\/span> <span class=\"n\">endDate<\/span><span class=\"p\">,<\/span> <span class=\"n\">regionCode<\/span><span class=\"p\">,<\/span> <span class=\"n\">credential<\/span><span class=\"p\">,<\/span> <span class=\"n\">expectedInterval<\/span><span class=\"p\">,<\/span> <span class=\"n\">autoSave<\/span><span class=\"p\">,<\/span> <span class=\"n\">regionName<\/span><span class=\"p\">,<\/span> <span class=\"n\">data_combine<\/span><span class=\"p\">)<\/span>\n            <span class=\"k\">except<\/span><span class=\"p\">:<\/span>\n                <span class=\"nf\">print<\/span><span class=\"p\">(<\/span><span class=\"nf\">format_exc<\/span><span class=\"p\">())<\/span>\n            <span class=\"c1\"># res[regionCode].extend\n<\/span>            <span class=\"c1\"># \u6bcf\u6b21\u67e5\u8be2\u540e\u4f11\u606f\u4e00\u5230\u4e94\u79d2\uff0c\u5b9e\u9645\u4e0a\u5728\u8d26\u53f7\u5f88\u591a\u7684\u60c5\u51b5\u4e0b\uff0c\u8fd9\u4e2a\u65f6\u95f4\u53ef\u4ee5\u7f29\u77ed\n<\/span>            <span class=\"n\">time<\/span><span class=\"p\">.<\/span><span class=\"nf\">sleep<\/span><span class=\"p\">(<\/span><span class=\"n\">expectedInterval<\/span> <span class=\"o\">\/<\/span> <span class=\"mi\">1000<\/span> <span class=\"o\">+<\/span> <span class=\"n\">random<\/span><span class=\"p\">.<\/span><span class=\"nf\">randint<\/span><span class=\"p\">(<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span> <span class=\"mi\">3<\/span><span class=\"p\">)<\/span> <span class=\"o\">\/<\/span> <span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\n<span class=\"k\">if<\/span> <span class=\"n\">__name__<\/span> <span class=\"o\">==<\/span> <span class=\"sh\">'<\/span><span class=\"s\">__main__<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span>\n    <span class=\"kn\">import<\/span> <span class=\"n\">csv<\/span>\n    <span class=\"c1\"># # \u6e05\u6d17\u5173\u952e\u8bcd\n<\/span>    <span class=\"c1\"># titles = ['\u5e74\u4efd', '\u533a\u57df', '\u7b2c\u4e09\u65b9\u652f\u4ed8', '\u5728\u7ebf\u652f\u4ed8', '\u79fb\u52a8\u652f\u4ed8', '\u7f51\u8d37', '\u4e92\u8054\u7f51\u7406\u8d22', '\u4e92\u8054\u7f51\u4fdd\u9669', '\u5728\u7ebf\u7406\u8d22', '\u7535\u5b50\u94f6\u884c', '\u7f51\u94f6',\n<\/span>    <span class=\"c1\">#             '\u5927\u6570\u636e', '\u4e91\u8ba1\u7b97', '\u4eba\u5de5\u667a\u80fd',\n<\/span>    <span class=\"c1\">#             '\u533a\u5757\u94fe', '\u751f\u7269\u8bc6\u522b']\n<\/span>    <span class=\"c1\"># with open('combine_backup.csv', 'a', encoding='utf-8-sig', newline=\"\") as csvfile:\n<\/span>    <span class=\"c1\">#     writer = csv.writer(csvfile)\n<\/span>    <span class=\"c1\">#     writer.writerow(titles)\n<\/span>\n    <span class=\"k\">for<\/span> <span class=\"n\">regionCode<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">regions<\/span><span class=\"p\">:<\/span>\n        <span class=\"c1\"># regionCode = 928\n<\/span>        <span class=\"c1\"># regionName=\"\u5b89\u5fbd\"\n<\/span>        <span class=\"n\">regionName<\/span> <span class=\"o\">=<\/span> <span class=\"n\">regions<\/span><span class=\"p\">[<\/span><span class=\"n\">regionCode<\/span><span class=\"p\">]<\/span>\n        <span class=\"n\">data_combine<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{}<\/span>\n\n\n        <span class=\"nf\">crawl<\/span><span class=\"p\">(<\/span><span class=\"n\">regionCode<\/span><span class=\"p\">,<\/span> <span class=\"n\">credential<\/span><span class=\"p\">,<\/span> <span class=\"mi\">10<\/span><span class=\"p\">,<\/span> <span class=\"bp\">True<\/span><span class=\"p\">,<\/span> <span class=\"n\">regionName<\/span><span class=\"p\">,<\/span> <span class=\"n\">data_combine<\/span><span class=\"p\">)<\/span>\n        <span class=\"n\">data_list<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[]<\/span>\n        <span class=\"k\">for<\/span> <span class=\"n\">i<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">data_combine<\/span><span class=\"p\">:<\/span>\n                <span class=\"n\">data_list<\/span><span class=\"p\">.<\/span><span class=\"nf\">append<\/span><span class=\"p\">(<\/span><span class=\"n\">data_combine<\/span><span class=\"p\">[<\/span><span class=\"n\">i<\/span><span class=\"p\">])<\/span>\n        <span class=\"k\">with<\/span> <span class=\"nf\">open<\/span><span class=\"p\">(<\/span><span class=\"sh\">'<\/span><span class=\"s\">combine_backup.csv<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">a<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"n\">encoding<\/span><span class=\"o\">=<\/span><span class=\"sh\">'<\/span><span class=\"s\">utf-8-sig<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"n\">newline<\/span><span class=\"o\">=<\/span><span class=\"sh\">''<\/span><span class=\"p\">)<\/span> <span class=\"k\">as<\/span> <span class=\"n\">csvfile<\/span><span class=\"p\">:<\/span>\n            <span class=\"n\">writer<\/span> <span class=\"o\">=<\/span> <span class=\"n\">csv<\/span><span class=\"p\">.<\/span><span class=\"nf\">writer<\/span><span class=\"p\">(<\/span><span class=\"n\">csvfile<\/span><span class=\"p\">)<\/span>\n            <span class=\"n\">writer<\/span><span class=\"p\">.<\/span><span class=\"nf\">writerows<\/span><span class=\"p\">(<\/span><span class=\"n\">data_list<\/span><span class=\"p\">)<\/span>\n\n<\/code><\/pre>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;&#8221;&#8221; \u767e\u5ea6\u6307\u6570\u722c\u866b 2025\u5e743\u6708 &#8220;&#8221;&#8221; import json from traceback import format_exc import time import requests from datetime import datetime, timedelta import numpy as np import pandas as pd import random from requests.exceptions import RequestException cookies_dict = { &#8220;BAIDUID_BFESS&#8221;: &#8220;03C87F7E8DAB230EF3CF68E2E4CCB7AC:FG=1&#8221;, &#8220;Hm_lvt_d101ea4d2a5c67dab98251f0b5de24dc&#8221;: &#8220;1740900295&#8221;, &#8220;HMACCOUNT&#8221;: &#8220;70309D756AB7564A&#8221;, &#8220;ppfuid&#8221;: &#8220;FOCoIC3q5fKa8fgJnwzbE0LGziLN3VHbX8wfShDP6RCsfXQp\/69CStRUAcn\/QmhIlFDxPrAc\/s5tJmCocrihdwitHd04Lvs3Nfz26Zt2holplnIKVacidp8Sue4dMTyfg65BJnOFhn1HthtSiwtygiD7piS4vjG\/W9dLb1VAdqNDdL9XRrl2Sg9NTB85NN+3O0V6uxgO+hV7+7wZFfXG0MSpuMmh7GsZ4C7fF\/kTgmssH+sfZC32dB1R3HtMdot\/48PoBcDFpTKpfBzr\/OZicPkAszoKx6tIpFl6mGV2OCZLSjlTHjWa30fvbP8FZaaPM+RpBohGNhMcqCHhVhtXpVObaDCHgWJZH3ZrTGYHmi7XJB9z3y2o8Kqxep5XBCsugNOW5C73e\/g54kuY4PKIS8TtlheGhftBTbUILzt33xSjQXz\/gJEgSYx1vUQMipXdSecr9yhMSRLVoFktEC1isB71ZYfNRps7I7heVMQ6naCvK\/S9Ff5RtLDcahg8QCqqP\/JUZA7BRBFh68uqDQax10gfXgGxCNf3Sx8e4KXUBrqV\/g3hEEf9luu8oPziRIwanIJY1XZupqPZgmfh8BLwT9YUuyc0u8RKTitzO23hSwGX7sI4U3M5cfLBwVX5m74NveYUNi7Li87S8ZbXy31eyxBDK4IiDGlt1VFsxDIz0RsVHZudegSJ4zYa95fLOW41HdqdlVsa4ORVPwaoYgWzWigT4KUSvejPWWbczD37o0JAMY0Xq\/mt7JbC+fPJzgUfL+4+FMXDRk2cSv9vAGlESpYON8OX4n9+9Iiz1Xhbaw4n3CtUvSh71zjHSVbOXva7HJMc4xeuRg7bfpEY\/vwboa87Mf4DRxb3AAPFSzwHIQsKUb2NhurFXPHTBQ0ZqOMmlY+ev7ywybLL8HzYMUKf7xXkuNYCZBWkNbmLJnCAaUcxvvi236pnhRAiCpqFQgkNJGbjymaHirV01jGyjdICWIu01rzx5KJW22MzZ0c8aSEaiiS5MGq2rHDxd+cheyqXoKDbFUOPsQE72\/a0kEWC2KhuPKLM9\/6dZ00isWP1M71YVK+GcriYXdSGsdTLua2Z4rsiMpSciOy0GtH0BDIaHROBNUIGus13vk3BD9zddjzj9ZJseUlzwEV+bscicwIjSCwQvM4e3xnzVzlld+zvYN0q7Yw+xx5u95PSoz+nO88s9TqjpS2CuGXeoK3JV0ZsrYL63KbB6FE0u0LGhMX2XqphVNhJG\/707P2GcCYlcR4=&#8221;, &#8220;BDUSS&#8221;: &#8220;ndtMC1BVXpUdFF6Z3NGTHVCZlRmTXJVSXN3WUZXSkpTUXg5NU1iZGRCNlJsZXRuSVFBQUFBJCQAAAAAAAAAAAEAAAAK5OqRyqLH6cPOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEIxGeRCMRnV&#8221;, &#8220;SIGNIN_UC&#8221;: &#8220;70a2711cf1d3d9b1a82d2f87d633bd8a04909129477oUCDVgDuFIWQq0I5Qh%2BRYVI211tn6l6RtVzEcHQHKEeV3UqjZrdEN2J58qMq3yI6SH4Pf5yaO3wsYp7rDl7owf8Vxw8nV7J6HDde92bSfNLB%2BLYSDn8mcJUeJZ9DvByeHYEh5HZIEmBqjEW9Kp1nhY39kd0%2FMKxlLMEZywpREcfeqkBuNDImGT1swOphjUr0m7yoFRuoRONhZO0DhIUp8qMp%2BI%2BGZ9URB2%2FDv3g%2FwZ0nXnjrScjtkdIga7hBOF4Os4RsqXflHU7INYd10uoQ2Ecn99qPwcD5%2BuKJ7%2BtRR94%3D59476045678983651647832308115528&#8221;, &#8220;__cas__rn__&#8221;: &#8220;490912947&#8221;, &#8220;__cas__st__212&#8221;: &#8220;eb761014eef2d40b7c2bad261c6098e983f5ecc9a335b83a0f261f17f01cab78142cd91d640c0bff5197630b&#8221;, &#8220;__cas__id__212&#8221;: &#8220;40927145&#8221;, &#8220;CPTK_212&#8221;: &hellip;<\/p>\n","protected":false},"author":2,"featured_media":100284,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-100283","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/100283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=100283"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/100283\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/100284"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=100283"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=100283"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=100283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}