{"id":4111,"date":"2026-06-07T10:29:38","date_gmt":"2026-06-07T10:29:38","guid":{"rendered":"https:\/\/tian-jian.org\/tj-field-school\/?post_type=toolbox&#038;p=4111"},"modified":"2026-06-07T11:01:06","modified_gmt":"2026-06-07T11:01:06","slug":"google-%e9%80%b2%e9%9a%8e%e6%90%9c%e7%b4%a2%e6%8a%80%e5%b7%a7","status":"publish","type":"toolbox","link":"https:\/\/tian-jian.org\/tj-field-school\/toolbox\/google-%e9%80%b2%e9%9a%8e%e6%90%9c%e7%b4%a2%e6%8a%80%e5%b7%a7\/","title":{"rendered":"Google \u9032\u968e\u641c\u7d22\u6280\u5de7"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Google \u63d0\u4f9b\u4e86\u5f37\u5927\u7684\u7cbe\u78ba\u641c\u7d22\u529f\u80fd\uff0c\u5e6b\u52a9\u4f60\u5728\u6d77\u91cf\u8cc7\u8a0a\u4e2d\u5feb\u901f\u5b9a\u4f4d\u6240\u9700\u5167\u5bb9\u3002\u4f60\u53ef\u4ee5\u900f\u904e\u5b98\u65b9\u7684\u300c\u9032\u968e\u641c\u7d22\u300d\u4ecb\u9762\u8f15\u9b06\u4e0a\u624b\uff0c\u4e5f\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528\u641c\u7d22\u904b\u7b97\u7b26\uff08Google Dorks\uff09\u7372\u5f97\u66f4\u5927\u7684\u9748\u6d3b\u6027\u3002Google Dorks \u662f\u4e00\u7a2e\u9032\u968e\u641c\u7d22\u6280\u8853\uff0c\u901a\u904e\u4f7f\u7528\u7279\u6b8a\u7684\u641c\u7d22\u904b\u7b97\u7b26\uff08\u5982 <code>site:<\/code>\u3001<code>filetype:<\/code>\u3001<code>inurl:<\/code> \u7b49\uff09\u4f86\u7cbe\u78ba\u67e5\u627e\u4e92\u806f\u7db2\u4e0a\u7279\u5b9a\u6216\u96b1\u85cf\u7684\u8cc7\u8a0a\u3002\u9019\u4e9b\u904b\u7b97\u7b26\u80fd\u5920\u7a81\u7834\u5e38\u898f\u641c\u7d22\u7684\u5c40\u9650\uff0c\u5e6b\u52a9\u8a18\u8005\u3001\u7814\u7a76\u4eba\u54e1\u767c\u73fe\u666e\u901a\u7528\u6236\u96e3\u4ee5\u627e\u5230\u7684\u5167\u5bb9\u3002\u9019\u4e9b\u6280\u5de7\u6700\u521d\u7531\u8a08\u7b97\u6a5f\u5b89\u5168\u5c08\u5bb6 Johnny Long \u65bc 2002 \u5e74\u7cfb\u7d71\u6574\u7406\uff0c\u5982\u4eca\u5df2\u6210\u70ba\u8a18\u8005\u548c\u7814\u7a76\u4eba\u54e1\u5fc5\u5099\u7684\u8abf\u67e5\u5de5\u5177\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin=\"\">\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Noto+Serif+TC:wght@400;600;700&amp;family=Noto+Sans+TC:wght@400;500;600&amp;family=IBM+Plex+Mono:wght@500;600&amp;display=swap\" rel=\"stylesheet\">\n\n<div id=\"tjfs-slider-wrap\">\n\n<style>\n#tjfs-slider-wrap {\n  --teal:      #3dabb1;\n  --teal-dark: #2d8389;\n  --gold:      #ae8c11;\n  --gold-bg:   rgba(174,140,17,0.92);\n  --text:      #1e1e1e;\n  --muted:     #666;\n  --border:    #e2e2da;\n  --bg-card:   #ffffff;\n  --bg-foot:   #fafaf7;\n  --radius:    4px;\n  font-family: 'Noto Sans TC', sans-serif;\n  max-width: 960px;\n  margin: 0 auto;\n  box-sizing: border-box;\n}\n#tjfs-slider-wrap *, #tjfs-slider-wrap *::before, #tjfs-slider-wrap *::after {\n  box-sizing: border-box;\n}\n#tjfs-card {\n  background: var(--bg-card);\n  border-radius: var(--radius);\n  box-shadow: 0 2px 20px rgba(0,0,0,0.11);\n  overflow: hidden;\n}\n#tjfs-header {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n  padding: 16px 22px;\n  border-bottom: 1px solid var(--border);\n  flex-shrink: 0;\n  flex-wrap: nowrap;\n  overflow: hidden;\n}\n#tjfs-tag {\n  display: inline-block;\n  background: var(--teal);\n  color: #fff;\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 20px;\n  font-weight: 500;\n  letter-spacing: 0.18em;\n  text-transform: uppercase;\n  padding: 8px 16px 7px;\n  border-radius: 3px;\n  flex-shrink: 0;\n  line-height: 1.4;\n}\n#tjfs-title {\n  font-family: 'Noto Serif TC', serif;\n  font-size: 24px;\n  font-weight: 700;\n  color: var(--text);\n  line-height: 1.2;\n  margin: 0;\n  white-space: nowrap;\n}\n#tjfs-subtitle {\n  font-size: 17px;\n  color: var(--muted);\n  margin: 0;\n  line-height: 1.4;\n  font-weight: 300;\n  letter-spacing: 0.01em;\n  display: inline;\n}\n#tjfs-progress-track {\n  height: 3px;\n  background: #dde8e8;\n}\n#tjfs-progress-fill {\n  height: 100%;\n  background: var(--teal);\n  transition: width 0.35s ease;\n}\n#tjfs-body {\n  display: flex;\n  transition: opacity 0.2s ease;\n}\n#tjfs-body.tjfs-fading { opacity: 0; }\n#tjfs-img-pane {\n  flex: 0 0 58%;\n  position: relative;\n  background: #111;\n  cursor: zoom-in;\n  overflow: hidden;\n}\n#tjfs-img-pane img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  display: block;\n  transition: opacity 0.3s ease;\n}\n#tjfs-img-pane img.tjfs-unloaded { opacity: 0; }\n#tjfs-step-badge {\n  position: absolute;\n  top: 12px;\n  left: 12px;\n  background: var(--teal);\n  color: #fff;\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 10px;\n  font-weight: 600;\n  letter-spacing: 0.08em;\n  padding: 3px 10px;\n  border-radius: 2px;\n  text-transform: uppercase;\n  z-index: 2;\n}\n#tjfs-callout {\n  position: absolute;\n  bottom: 14px;\n  right: 14px;\n  background: var(--gold-bg);\n  color: #fff;\n  font-size: 12px;\n  font-weight: 500;\n  line-height: 1.5;\n  padding: 6px 11px;\n  border-radius: 3px;\n  max-width: 68%;\n  z-index: 2;\n  display: none;\n}\n#tjfs-callout.tjfs-visible { display: block; }\n#tjfs-text-pane {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  padding: 20px 20px 16px;\n  border-left: 1px solid var(--border);\n  overflow: hidden;\n}\n#tjfs-step-label {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 10px;\n  font-weight: 600;\n  color: var(--teal);\n  letter-spacing: 0.12em;\n  text-transform: uppercase;\n  margin-bottom: 10px;\n}\n#tjfs-slide-text {\n  font-size: 14px;\n  line-height: 1.85;\n  color: var(--text);\n  overflow-y: auto;\n  flex: 1;\n  padding-right: 4px;\n}\n#tjfs-slide-text::-webkit-scrollbar { width: 3px; }\n#tjfs-slide-text::-webkit-scrollbar-track { background: #f0f0ea; }\n#tjfs-slide-text::-webkit-scrollbar-thumb { background: var(--teal); border-radius: 2px; }\n#tjfs-slider-wrap .ht { color: var(--teal-dark); font-weight: 600; }\n#tjfs-slider-wrap .hg { color: var(--gold); font-weight: 600; }\n#tjfs-footer {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  padding: 10px 18px;\n  border-top: 1px solid var(--border);\n  background: var(--bg-foot);\n  flex-wrap: wrap;\n  gap: 8px;\n}\n#tjfs-dots {\n  display: flex;\n  gap: 6px;\n  flex-wrap: wrap;\n}\n.tjfs-dot {\n  width: 9px; height: 9px;\n  border-radius: 50%;\n  border: none;\n  background: #ccc;\n  cursor: pointer;\n  padding: 0;\n  transition: background 0.2s, transform 0.2s;\n}\n.tjfs-dot.tjfs-active  { background: var(--teal); transform: scale(1.3); }\n.tjfs-dot.tjfs-done    { background: var(--teal); opacity: 0.5; }\n#tjfs-nav {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n}\n#tjfs-counter {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 11px;\n  color: var(--muted);\n  min-width: 42px;\n  text-align: center;\n}\n.tjfs-btn {\n  border: none;\n  padding: 6px 14px;\n  font-size: 13px;\n  font-weight: 600;\n  border-radius: 3px;\n  cursor: pointer;\n  transition: background 0.2s, opacity 0.2s;\n  font-family: 'Noto Sans TC', sans-serif;\n  letter-spacing: 0.02em;\n}\n.tjfs-btn:disabled { opacity: 0.3; cursor: default; }\n#tjfs-btn-download { background: var(--gold); color: #fff; }\n#tjfs-btn-download:hover { background: #8f7210; }\n#tjfs-btn-prev { background: #fff; color: var(--teal); border: 1.5px solid var(--teal); }\n#tjfs-btn-prev:hover:not(:disabled) { background: #eef7f8; }\n#tjfs-btn-next { background: var(--teal); color: #fff; }\n#tjfs-btn-next:hover:not(:disabled) { background: var(--teal-dark); }\n#tjfs-lightbox {\n  display: none;\n  position: fixed;\n  inset: 0;\n  background: rgba(0,0,0,0.88);\n  z-index: 999999;\n  align-items: center;\n  justify-content: center;\n  cursor: zoom-out;\n}\n#tjfs-lightbox.tjfs-open { display: flex; }\n#tjfs-lightbox img {\n  max-width: 92vw;\n  max-height: 90vh;\n  border-radius: 3px;\n  box-shadow: 0 8px 40px rgba(0,0,0,0.5);\n}\n#tjfs-lb-close {\n  position: absolute;\n  top: 18px; right: 22px;\n  color: #fff;\n  font-size: 28px;\n  cursor: pointer;\n  line-height: 1;\n  opacity: 0.8;\n  background: none;\n  border: none;\n  padding: 0;\n}\n#tjfs-lb-close:hover { opacity: 1; }\n#tjfs-modal-overlay {\n  display: none;\n  position: fixed;\n  inset: 0;\n  background: rgba(0,0,0,0.55);\n  z-index: 99999;\n  align-items: center;\n  justify-content: center;\n}\n#tjfs-modal-overlay.tjfs-open { display: flex; }\n#tjfs-modal-box {\n  background: #fff;\n  border-radius: 6px;\n  padding: 28px 28px 22px;\n  max-width: 540px;\n  width: 92vw;\n  box-shadow: 0 8px 40px rgba(0,0,0,0.22);\n  position: relative;\n}\n#tjfs-modal-box h3 {\n  font-family: 'Noto Serif TC', serif;\n  font-size: 17px;\n  color: var(--text);\n  margin: 0 0 6px;\n}\n#tjfs-modal-box p {\n  font-size: 13px;\n  color: var(--muted);\n  margin: 0 0 14px;\n}\n#tjfs-modal-text {\n  width: 100%;\n  height: 200px;\n  font-size: 13px;\n  line-height: 1.7;\n  padding: 10px;\n  border: 1.5px solid var(--border);\n  border-radius: 3px;\n  resize: none;\n  font-family: 'Noto Sans TC', sans-serif;\n  color: var(--text);\n}\n#tjfs-modal-footer {\n  display: flex;\n  gap: 10px;\n  margin-top: 14px;\n  justify-content: flex-end;\n}\n#tjfs-modal-copy {\n  background: var(--teal);\n  color: #fff;\n  border: none;\n  padding: 7px 18px;\n  border-radius: 3px;\n  font-size: 13px;\n  font-weight: 600;\n  cursor: pointer;\n  font-family: 'Noto Sans TC', sans-serif;\n}\n#tjfs-modal-copy:hover { background: var(--teal-dark); }\n#tjfs-modal-close-btn {\n  background: #fff;\n  color: var(--muted);\n  border: 1.5px solid var(--border);\n  padding: 7px 16px;\n  border-radius: 3px;\n  font-size: 13px;\n  cursor: pointer;\n  font-family: 'Noto Sans TC', sans-serif;\n}\n#tjfs-modal-close-btn:hover { background: #f5f5f0; }\n<\/style>\n\n<div id=\"tjfs-card\">\n  <div id=\"tjfs-header\">\n    <span id=\"tjfs-tag\">\u6307\u5357<\/span>\n    <span id=\"tjfs-title\">Google \u9032\u968e\u641c\u5c0b\u6280\u5de7<\/span>\n    <span id=\"tjfs-subtitle\">\u5982\u4f55\u7cbe\u6e96\u6316\u6398\u4f60\u9700\u8981\u7684\u8cc7\u8a0a<\/span>\n  <\/div>\n  <div id=\"tjfs-progress-track\">\n    <div id=\"tjfs-progress-fill\"><\/div>\n  <\/div>\n  <div id=\"tjfs-body\">\n    <div id=\"tjfs-img-pane\">\n      <img decoding=\"async\" id=\"tjfs-slide-img\" src=\"\" alt=\"\">\n      <div id=\"tjfs-step-badge\"><\/div>\n      <div id=\"tjfs-callout\"><\/div>\n    <\/div>\n    <div id=\"tjfs-text-pane\">\n      <div id=\"tjfs-step-label\"><\/div>\n      <div id=\"tjfs-slide-text\"><\/div>\n    <\/div>\n  <\/div>\n  <div id=\"tjfs-footer\">\n    <div id=\"tjfs-dots\"><\/div>\n    <div id=\"tjfs-nav\">\n      <span id=\"tjfs-counter\"><\/span>\n      <button class=\"tjfs-btn\" id=\"tjfs-btn-download\">\u4e0b\u8f09\u8aaa\u660e\u6587\u5b57<\/button>\n      <button class=\"tjfs-btn\" id=\"tjfs-btn-prev\">\u2190 \u4e0a\u4e00\u6b65<\/button>\n      <button class=\"tjfs-btn\" id=\"tjfs-btn-next\">\u4e0b\u4e00\u6b65 \u2192<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<div id=\"tjfs-lightbox\">\n  <button id=\"tjfs-lb-close\">\u2715<\/button>\n  <img decoding=\"async\" id=\"tjfs-lb-img\" src=\"\" alt=\"\">\n<\/div>\n\n<div id=\"tjfs-modal-overlay\">\n  <div id=\"tjfs-modal-box\">\n    <h3>\u4e0b\u8f09\u8aaa\u660e\u6587\u5b57<\/h3>\n    <p>\u8907\u88fd\u4ee5\u4e0b\u6587\u5b57\uff0c\u53ef\u8cbc\u5165\u6587\u4ef6\u6216\u7ffb\u8b6f\u5de5\u5177\u4f7f\u7528\u3002<\/p>\n    <textarea id=\"tjfs-modal-text\" readonly=\"\"><\/textarea>\n    <div id=\"tjfs-modal-footer\">\n      <button id=\"tjfs-modal-close-btn\">\u95dc\u9589<\/button>\n      <button id=\"tjfs-modal-copy\">\u8907\u88fd\u5168\u6587<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<\/div>\n\n<script>\n(function() {\n\nvar TJFS_SLIDES = [\n  {\n    label: \"STEP 01\",\n    badge: \"\u6b65\u9a5f 1 \u2500\u2500 \u9032\u968e\u641c\u5c0b\u4ecb\u9762\",\n    img: \"https:\/\/tian-jian.org\/tj-field-school\/wp-content\/uploads\/2026\/06\/Screenshot-2026-03-27-at-22.13.26.png\",\n    callout: \"\u25bc \u586b\u5beb\u641c\u5c0b\u8868\u55ae\u6b04\u4f4d\",\n    html: '\u5728\u700f\u89bd\u5668\u8f38\u5165 <span class=\"ht\">google.com\/advanced_search<\/span>\uff0c\u9032\u5165\u8868\u55ae\u5f0f\u4ecb\u9762\u3002\u4e0d\u9700\u8a18\u4efb\u4f55\u8a9e\u6cd5\uff0c\u76f4\u63a5\u586b\u5beb\u6b04\u4f4d\uff1a<span class=\"hg\">\u5b8c\u5168\u7b26\u5408\u7684\u5b57\u8a5e\u3001\u6392\u9664\u5b57\u8a5e\u3001\u9650\u5b9a\u7db2\u7ad9\u3001\u6a94\u6848\u985e\u578b<\/span>\u7b49\u3002\u9069\u5408\u5076\u723e\u9700\u8981\u7cbe\u78ba\u641c\u5c0b\u7684\u4eba\u3002',\n    plain: '\u6b65\u9a5f\u4e00\uff1a\u9032\u968e\u641c\u5c0b\u4ecb\u9762\uff08\u5165\u9580\uff09\\n\\n\u5728\u700f\u89bd\u5668\u8f38\u5165 google.com\/advanced_search\uff0c\u9032\u5165\u8868\u55ae\u5f0f\u4ecb\u9762\u3002\u4e0d\u9700\u8a18\u4efb\u4f55\u8a9e\u6cd5\uff0c\u76f4\u63a5\u586b\u5beb\u6b04\u4f4d\uff1a\u5b8c\u5168\u7b26\u5408\u7684\u5b57\u8a5e\u3001\u6392\u9664\u5b57\u8a5e\u3001\u9650\u5b9a\u7db2\u7ad9\u3001\u6a94\u6848\u985e\u578b\u7b49\u3002\u9069\u5408\u5076\u723e\u9700\u8981\u7cbe\u78ba\u641c\u5c0b\u7684\u4eba\u3002'\n  },\n  {\n    label: \"STEP 02\",\n    badge: \"\u6b65\u9a5f 2 \u2500\u2500 \u641c\u5c0b\u904b\u7b97\u7b26\",\n    img: \"https:\/\/tian-jian.org\/tj-field-school\/wp-content\/uploads\/2026\/06\/Screenshot-2026-03-27-at-22.15.46.png\",\n    callout: \"\u25bc \u8f38\u5165\u904b\u7b97\u7b26\u8a9e\u6cd5\",\n    html: '\u76f4\u63a5\u5728\u666e\u901a Google \u641c\u5c0b\u6b04\u8f38\u5165\u904b\u7b97\u7b26\uff1a<span class=\"ht\">site:<\/span>\u9650\u5b9a\u7db2\u7ad9\u3001<span class=\"ht\">filetype:<\/span>\u6a94\u6848\u985e\u578b\u3001<span class=\"ht\">intitle:<\/span>\u6a19\u984c\u95dc\u9375\u5b57\u3001<span class=\"ht\">inurl:<\/span>\u7db2\u5740\u95dc\u9375\u5b57\u3001<span class=\"hg\">\" \"<\/span>\u5b8c\u5168\u7b26\u5408\u3001<span class=\"hg\">-<\/span>\u6392\u9664\u5b57\u8a5e\u3001<span class=\"ht\">after:\/before:<\/span>\u9650\u5b9a\u65e5\u671f\u3002',\n    plain: '\u6b65\u9a5f\u4e8c\uff1a\u641c\u5c0b\u904b\u7b97\u7b26\uff08\u9032\u968e\uff09\\n\\n\u76f4\u63a5\u5728\u666e\u901a Google \u641c\u5c0b\u6b04\u8f38\u5165\u904b\u7b97\u7b26\uff1asite:\u9650\u5b9a\u7db2\u7ad9\u3001filetype:\u6a94\u6848\u985e\u578b\u3001intitle:\u6a19\u984c\u95dc\u9375\u5b57\u3001inurl:\u7db2\u5740\u95dc\u9375\u5b57\u3001\" \"\u5b8c\u5168\u7b26\u5408\u3001-\u6392\u9664\u5b57\u8a5e\u3001after:\/before:\u9650\u5b9a\u65e5\u671f\u3002'\n  },\n  {\n    label: \"STEP 03\",\n    badge: \"\u6b65\u9a5f 3 \u2500\u2500 \u7d44\u5408\u5be6\u6230\",\n    img: \"https:\/\/tian-jian.org\/tj-field-school\/wp-content\/uploads\/2026\/06\/Screenshot-2026-03-27-at-22.14.57.png\",\n    callout: \"\u25bc \u591a\u904b\u7b97\u7b26\u7d44\u5408\u641c\u5c0b\",\n    html: '\u591a\u500b\u904b\u7b97\u7b26\u53ef\u7d44\u5408\u4f7f\u7528\uff0c\u7cbe\u6e96\u5b9a\u4f4d\uff1a\u516c\u53f8\u5b98\u7db2PDF\u8ca1\u5831\u7528 <span class=\"ht\">site:byd.com filetype:pdf \u8ca1\u5831<\/span>\uff1b\u653f\u5e9c\u901a\u77e5\u6587\u4ef6\u7528 <span class=\"ht\">site:gov.cn intitle:\u901a\u77e5<\/span>\uff1b\u7279\u5b9a\u6642\u6bb5\u5a92\u9ad4\u5831\u5c0e\u7528 <span class=\"hg\">site:caixin.com \"\u6bd4\u4e9e\u8fea\" after:2024-01-01<\/span>\u3002',\n    plain: '\u6b65\u9a5f\u4e09\uff1a\u7d44\u5408\u5be6\u6230\\n\\n\u591a\u500b\u904b\u7b97\u7b26\u53ef\u7d44\u5408\u4f7f\u7528\uff0c\u7cbe\u6e96\u5b9a\u4f4d\uff1a\u516c\u53f8\u5b98\u7db2PDF\u8ca1\u5831\u7528 site:byd.com filetype:pdf \u8ca1\u5831\uff1b\u653f\u5e9c\u901a\u77e5\u6587\u4ef6\u7528 site:gov.cn intitle:\u901a\u77e5\uff1b\u7279\u5b9a\u6642\u6bb5\u5a92\u9ad4\u5831\u5c0e\u7528 site:caixin.com \"\u6bd4\u4e9e\u8fea\" after:2024-01-01\u3002'\n  }\n];\n\nvar tjfsCur = 0;\n\nfunction tjfsFixHeight() {\n  var wrap = document.getElementById('tjfs-slider-wrap');\n  var body = document.getElementById('tjfs-body');\n  if (!wrap || !body) return;\n  var cardW = wrap.offsetWidth;\n  var h = (cardW * 0.58) * (4 \/ 5);\n  h = Math.max(260, Math.min(h, 520));\n  body.style.height = h + 'px';\n}\n\nfunction tjfsRender() {\n  var s = TJFS_SLIDES[tjfsCur];\n  var body = document.getElementById('tjfs-body');\n  body.classList.add('tjfs-fading');\n  setTimeout(function() {\n    var img = document.getElementById('tjfs-slide-img');\n    img.classList.add('tjfs-unloaded');\n    img.src = s.img;\n    img.alt = s.badge;\n    img.onload = function() { img.classList.remove('tjfs-unloaded'); };\n    img.onerror = function() { img.classList.remove('tjfs-unloaded'); };\n    document.getElementById('tjfs-step-badge').textContent = s.badge;\n    var callout = document.getElementById('tjfs-callout');\n    callout.textContent = s.callout;\n    if (s.callout && s.callout.trim() !== '') {\n      callout.classList.add('tjfs-visible');\n    } else {\n      callout.classList.remove('tjfs-visible');\n    }\n    document.getElementById('tjfs-step-label').textContent = s.label;\n    document.getElementById('tjfs-slide-text').innerHTML = s.html;\n    document.getElementById('tjfs-slide-text').scrollTop = 0;\n    document.getElementById('tjfs-progress-fill').style.width =\n      ((tjfsCur + 1) \/ TJFS_SLIDES.length * 100) + '%';\n    document.getElementById('tjfs-counter').textContent =\n      (tjfsCur + 1) + ' \/ ' + TJFS_SLIDES.length;\n    document.getElementById('tjfs-btn-prev').disabled = tjfsCur === 0;\n    var btnNext = document.getElementById('tjfs-btn-next');\n    if (tjfsCur === TJFS_SLIDES.length - 1) {\n      btnNext.textContent = '\u5b8c\u6210 \u2713';\n      btnNext.disabled = true;\n    } else {\n      btnNext.textContent = '\u4e0b\u4e00\u6b65 \u2192';\n      btnNext.disabled = false;\n    }\n    var dotsEl = document.getElementById('tjfs-dots');\n    dotsEl.innerHTML = '';\n    TJFS_SLIDES.forEach(function(_, i) {\n      var d = document.createElement('button');\n      d.className = 'tjfs-dot' +\n        (i === tjfsCur ? ' tjfs-active' : i < tjfsCur ? ' tjfs-done' : '');\n      d.title = '\u6b65\u9a5f ' + (i + 1);\n      (function(idx) {\n        d.addEventListener('click', function() { tjfsCur = idx; tjfsRender(); });\n      })(i);\n      dotsEl.appendChild(d);\n    });\n    body.classList.remove('tjfs-fading');\n  }, 200);\n}\n\nfunction tjfsGo(dir) {\n  var next = tjfsCur + dir;\n  if (next < 0 || next >= TJFS_SLIDES.length) return;\n  tjfsCur = next;\n  tjfsRender();\n}\n\ndocument.getElementById('tjfs-btn-prev').addEventListener('click', function() { tjfsGo(-1); });\ndocument.getElementById('tjfs-btn-next').addEventListener('click', function() { tjfsGo(1); });\n\ndocument.getElementById('tjfs-img-pane').addEventListener('click', function() {\n  var src = document.getElementById('tjfs-slide-img').src;\n  if (!src) return;\n  document.getElementById('tjfs-lb-img').src = src;\n  document.getElementById('tjfs-lightbox').classList.add('tjfs-open');\n});\ndocument.getElementById('tjfs-lb-close').addEventListener('click', function(e) {\n  e.stopPropagation();\n  document.getElementById('tjfs-lightbox').classList.remove('tjfs-open');\n});\ndocument.getElementById('tjfs-lightbox').addEventListener('click', function(e) {\n  if (e.target === this) {\n    document.getElementById('tjfs-lightbox').classList.remove('tjfs-open');\n  }\n});\n\ndocument.getElementById('tjfs-btn-download').addEventListener('click', function() {\n  var all = TJFS_SLIDES.map(function(s) { return s.plain; }).join('\\n\\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\\n\\n');\n  document.getElementById('tjfs-modal-text').value = all;\n  document.getElementById('tjfs-modal-overlay').classList.add('tjfs-open');\n});\ndocument.getElementById('tjfs-modal-close-btn').addEventListener('click', function() {\n  document.getElementById('tjfs-modal-overlay').classList.remove('tjfs-open');\n});\ndocument.getElementById('tjfs-modal-overlay').addEventListener('click', function(e) {\n  if (e.target === this) {\n    document.getElementById('tjfs-modal-overlay').classList.remove('tjfs-open');\n  }\n});\ndocument.getElementById('tjfs-modal-copy').addEventListener('click', function() {\n  var ta = document.getElementById('tjfs-modal-text');\n  ta.select();\n  document.execCommand('copy');\n  var btn = document.getElementById('tjfs-modal-copy');\n  btn.textContent = '\u5df2\u8907\u88fd \u2713';\n  setTimeout(function() { btn.textContent = '\u8907\u88fd\u5168\u6587'; }, 2000);\n});\n\ntjfsFixHeight();\nwindow.addEventListener('resize', tjfsFixHeight);\ntjfsRender();\n\n})();\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5f9e\u8868\u55ae\u4ecb\u9762\u5165\u9580\uff0c\u5230\u719f\u7df4\u904b\u7528\u904b\u7b97\u7b26\u2014\u2014\u638c\u63e1\u9019\u4e9b\u6280\u5de7\u5f8c\uff0c\u539f\u672c\u9700\u8981\u7ffb\u627e\u6578\u5c0f\u6642\u7684\u8cc7\u8a0a\uff0c\u5e7e\u79d2\u5167\u5c31\u80fd\u5b9a\u4f4d\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u5ef6\u4f38\u95b1\u8b80\uff1a<\/strong> \u60f3\u770b\u66f4\u591a Google \u641c\u7d22\u904b\u7b97\u7b26\u7684\u5be6\u6230\u6848\u4f8b\uff1f\u63a8\u85a6\u95b1\u8b80\u7530\u9593\u767c\u8868\u7684\u300a\u5982\u4f55\u7528 OSINT \u8ffd\u8e64\u8239\u96bb\u300b\u7cfb\u5217\u6559\u5b78\u3002\u9019\u4efd\u6307\u5357\u4ee5\u8ffd\u8e64\u8239\u96bb\u70ba\u4e3b\u984c\uff0c\u904e\u7a0b\u4e2d\u5927\u91cf\u6f14\u793a\u4e86 <code>site:<\/code>\u3001<code>filetype:<\/code>\u3001<code>\" \"<\/code> \u7b49\u904b\u7b97\u7b26\u7684\u5be6\u969b\u64cd\u4f5c\u2014\u2014\u5f9e\u641c\u7d22\u4fc4\u7f85\u65af\u4f01\u696d\u767b\u8a18\u6587\u4ef6\uff0c\u5230\u6316\u6398\u4e2d\u570b\u6f01\u8239\u7684\u80cc\u666f\u8cc7\u6599\uff0c\u6bcf\u4e00\u6b65\u90fd\u6709\u5177\u9ad4\u622a\u5716\u8aaa\u660e\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 <a href=\"https:\/\/pulitzercenter.org\/resource\/how-track-ships-pro-using-osint-part-i\">Part I<\/a> \uff5c <a href=\"https:\/\/pulitzercenter.org\/resource\/how-track-ships-pro-using-osint-part-ii\">Part II<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Google \u63d0\u4f9b\u4e86\u5f37\u5927\u7684\u7cbe\u78ba\u641c\u7d22\u529f\u80fd\uff0c\u5e6b\u52a9\u4f60\u5728\u6d77\u91cf\u8cc7\u8a0a\u4e2d\u5feb\u901f\u5b9a\u4f4d\u6240\u9700\u5167\u5bb9\u3002<\/p>\n","protected":false},"featured_media":4112,"template":"","toolbox-type":[],"class_list":["post-4111","toolbox","type-toolbox","status-publish","has-post-thumbnail","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/toolbox\/4111","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/toolbox"}],"about":[{"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/types\/toolbox"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/media\/4112"}],"wp:attachment":[{"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/media?parent=4111"}],"wp:term":[{"taxonomy":"toolbox-type","embeddable":true,"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/toolbox-type?post=4111"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}