Blame view

data_crawling/使用说明.md 5.03 KB
8f6f14da   tangwang   test data prepare:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
  # Shopee API 爬虫 - 使用说明
  
  ## ✅ 已完成的工作
  
  1. **爬虫脚本**: `shopee_crawler.py` - 主爬虫程序
  2. **测试脚本**: `test_crawler.py` - 测试用(爬取前5个)
  3. **查询词文件**: `queries.txt` - 5024个搜索关键词
  4. **使用文档**: `README.md` - 详细使用说明
  
  ## 📂 目录结构
  
  ```
  data_crawling/
  ├── shopee_crawler.py          # 主爬虫脚本
  ├── test_crawler.py            # 测试脚本
  ├── queries.txt                # 5024个查询词
  ├── 万邦API_shopee.md          # API文档
  ├── README.md                  # 详细说明
  ├── 使用说明.md                # 本文件
  ├── shopee_results/            # 正式爬取结果目录
  └── test_results/              # 测试结果目录
  ```
  
  ## ⚠️ 重要提示
  
  **当前API账号状态**:
  - ✗ Shopee接口未开通(需要联系万邦API开通)
  - API Key: `t8618339029`
  - 每日限额: 50次
  - 到期时间: 2025-12-06
  
  **开通方式**:
  - QQ: 3142401606
  - 微信: onebound1997
  - 文档: https://open.onebound.cn/help/api/shopee.item_search.html
  
  ## 🚀 快速开始
  
  ### 1. 测试运行(推荐)
  
  ```bash
  cd /home/tw/SearchEngine/data_crawling
  python test_crawler.py
  ```
  
  这会测试前5个查询词,确认脚本功能正常。
  
  ### 2. 正式运行
  
  **开通API权限后**,运行完整爬取:
  
  ```bash
  python shopee_crawler.py
  ```
  
  这会爬取全部5024个查询词。
  
  ## 📊 脚本功能
  
  ### 主要特性
  
  - ✅ 自动读取查询词文件
  - ✅ 逐个请求API并保存JSON结果
  - ✅ 自动重试失败的请求(最多3次)
  - ✅ 控制请求频率(默认2秒间隔)
  - ✅ 保存爬取摘要和失败列表
  - ✅ 实时显示进度和统计信息
  
  ### 输出文件
  
  每个查询词会生成一个JSON文件:
  
  ```
  0001_Bohemian_Maxi_Dress_20231204_151203.json
  0002_Vintage_Denim_Jacket_20231204_151206.json
  ...
  ```
  
  ### 摘要文件
  
  `summary.json` 包含完整的爬取统计:
  
  ```json
  {
    "crawl_time": "2023-12-04T15:12:03",
    "total": 5024,
    "success": 5000,
    "fail": 24,
    "elapsed_seconds": 20480,
    "config": {
      "country": ".com.my",
      "page": 1,
      "delay": 2
    },
    "failed_queries": ["query1", "query2"]
  }
  ```
  
  ## ⚙️ 配置修改
  
  编辑 `shopee_crawler.py` 顶部的配置:
  
  ```python
  # 站点选择
  COUNTRY = '.com.my'  # 可选: .vn, .co.th, .tw, .co.id, .sg
  
  # 爬取页码
  PAGE = 1  # 第几页
  
  # 请求间隔(秒)
  DELAY = 2  # 建议2-5秒
  
  # 最大重试次数
  MAX_RETRIES = 3
  ```
  
  ## 📈 预估时间和资源
  
  ### 时间预估
  
  - 单个查询: ~4秒(API请求2秒 + 延迟2秒)
  - 5024个查询: ~5.6小时
  
  ### 资源需求
  
  - 磁盘空间: ~2-3 GB(取决于每个查询返回的商品数量)
  - 内存: 最小256MB
  - 网络: 稳定的互联网连接
  - API配额: 至少5024次调用额度
  
  ## 📝 使用示例
  
  ### 场景1: 测试API是否可用
  
  ```bash
  python test_crawler.py
  ```
  
  查看 `test_results/` 目录,检查JSON文件内容。
  
  ### 场景2: 爬取特定数量
  
  修改 `shopee_crawler.py` 的 `main()` 函数:
  
  ```python
  # 只爬取前100个
  queries = queries[:100]
  ```
  
  ### 场景3: 更换站点
  
  修改脚本顶部:
  
  ```python
  COUNTRY = '.sg'  # 改为新加坡站
  ```
  
  ### 场景4: 中断后继续
  
  1. 查看已爬取的数量:`ls shopee_results/*.json | wc -l`
  2. 删除 `queries.txt` 中已完成的查询词
  3. 重新运行脚本
  
  ## 🔧 故障排除
  
  ### 问题1: API权限错误
  
  ```
  ✗ API错误: shopee无权访问,请开通接口
  ```
  
  **解决**: 联系万邦API开通Shopee接口权限。
  
  ### 问题2: 网络超时
  
  ```
  ✗ 请求失败: Connection timeout
  ```
  
  **解决**: 
  - 检查网络连接
  - 增加超时时间(修改 `timeout=30` 参数)
  - 增加重试次数
  
  ### 问题3: API配额用完
  
  ```
  ✗ API错误: 超过每日限额
  ```
  
  **解决**:
  - 等待第二天重置
  - 或升级API套餐
  
  ### 问题4: 文件保存错误
  
  ```
  ✗ 保存失败: Permission denied
  ```
  
  **解决**:
  - 检查目录权限: `chmod 755 shopee_results`
  - 检查磁盘空间: `df -h`
  
  ## 📞 技术支持
  
  ### API提供商
  
  - **万邦API**
  - QQ: 3142401606
  - 微信: onebound1997
  - 官网: https://open.onebound.cn
  
  ### 脚本相关
  
  查看以下文件:
  - `README.md` - 详细文档
  - `test_results/` - 测试结果示例
  - API文档: `万邦API_shopee.md`
  
  ## ✨ 后续优化建议
  
  1. **断点续爬**: 记录已完成的查询词,支持中断后继续
  2. **多线程**: 使用多线程并发请求(注意API限流)
  3. **数据解析**: 从JSON中提取关键字段,存入数据库
  4. **统计分析**: 分析商品价格、销量分布等
  5. **定时任务**: 使用crontab设置定期爬取
  
  ## 🎯 使用流程总结
  
  ```bash
  # 步骤1: 开通API权限
  # 联系万邦API开通Shopee接口
  
  # 步骤2: 测试
  cd /home/tw/SearchEngine/data_crawling
  python test_crawler.py
  
  # 步骤3: 检查测试结果
  cat test_results/0001_Bohemian_Maxi_Dress.json
  
  # 步骤4: 正式爬取
  python shopee_crawler.py
  
  # 步骤5: 查看结果
  ls -lh shopee_results/
  cat shopee_results/summary.json
  ```
  
  ---
  
  **创建时间**: 2023-12-04  
  **脚本版本**: v1.0  
  **Python版本**: 3.6+