Scrapy爬虫手机号字段清洗:去点号、替换首位0为+号方法
Scrapy爬虫手机号字段格式化实现
直接在现有手机号提取逻辑后增加格式化处理代码即可,无需改动其他爬虫逻辑。
处理逻辑
- 将手机号原始值中的
.全部替换为空格,完成分隔符转换同时移除点号 - 校验字符串首位,若为
0则替换为+ - 增加空值容错判断,避免未提取到手机号时触发运行报错
修改后代码片段
定位到parse_book方法中手机号提取的elif分支,新增格式化逻辑即可:
elif 'Telefon:' in detail[i].get(): d2 = detail[i].xpath('.//text()').getall() d2 = [i.strip() for i in d2 if i.strip()][-1] # 手机号格式化 if d2: d2 = d2.replace('.', ' ') if d2[0] == '0': d2 = '+' + d2[1:] print(d2)
处理效果
以示例原始值0752.172.817测试:
- 替换点号为空格后输出
0752 172 817 - 替换首位0为
+后最终输出+752 172 817,完全匹配预期格式。
内容的提问来源于stack exchange,提问作者Amen Aziz
相关产品推荐
相关产品推荐

