怎么用Python抓取百度地图里的店名信息
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,本篇内容主要讲解"怎么用Python抓取百度地图里的店名信息",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"怎么用Python抓取百度地图里的店名信息"吧!
千家信息网最后更新 2026年11月03日怎么用Python抓取百度地图里的店名信息
本篇内容主要讲解"怎么用Python抓取百度地图里的店名信息",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"怎么用Python抓取百度地图里的店名信息"吧!
代码如下:
import requests
import re
import csv
import time
def BusinessFromBaiduDitu(citycode = '287',key_word='筛网',pageno=0):
parameter = {
"newmap": "1",
"reqflag": "pcmap",
"biz": "1",
"from": "webmap",
"da_par": "direct",
"pcevaname": "pc4.1",
"qt": "con",
"c": citycode, # 城市代码 "wd": key_word, # 搜索关键词 "wd2": "",
"pn": pageno, # 页数 "nn": pageno * 10,
"db": "0",
"sug": "0",
"addr": "0",
"da_src": "pcmappg.poi.page",
"on_gel": "1",
"src": "7",
"gr": "3",
"l": "12",
"tn": "B_NORMAL_MAP", # "u_loc": "12621219.536556,2630747.285024", "ie": "utf-8", # "b": "(11845157.18,3047692.2;11922085.18,3073932.2)", #这个应该是地理位置坐标,可以忽略 "t": "1468896652886"} headers = { 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36(KHTML, like Gecko) Chrome/56.0.2924.87Safari/537.36'} url = 'http://map.baidu.com/'
htm = requests.get(url, params=parameter, headers=headers) htm = htm.text.encode('latin-1').decode('unicode_escape') # 转码 pattern = r'(?<=\baddress_norm":"\[).+?(?="ty":)' htm = re.findall(pattern, htm) # 按段落匹配 for r in htm: pattern = r'(?<=\b"\},"name":").+?(?=")' name = re.findall(pattern, r) #if not name: pattern = r'(?<=\b,"name":").+?(?=")' name = re.findall(pattern, r) #print(name[0]) # 名称 pattern = r'.+?(?=")' adr = re.findall(pattern, r) pattern = r'\(.+?\[' address = re.sub(pattern, ' ', adr[0]) pattern = r'\(.+?\]' address = re.sub(pattern, ' ', address) #print(address) # 地址 pattern = r'(?<="phone":").+?(?=")' phone = re.findall(pattern, r)
try:
if phone[0] and '",' != phone[0]: phone_list = phone[0].split(sep=',')
for number in phone_list:
if re.match('1', number): print(citycode+name[0]+','+address+','+number) writer.writerow((name[0], address, number))
except:
continue print(citycode + ' ' + key_word + ' ' + str(pageno))现在开始写我搜"丝网""筛网"(key_word)的代码获取想要的数据,也要改城市代码(citycode)城市代码文件链接
#citynumlist是百度地图城市代码列表citynumlist = ['33','34','35' ''''''''''''''''' '370','371','372']keywordlist = ['丝网','筛网']
start = time.time()
num = 1
#建立csv文件,保存数据csvFile = open(r'/Users/apple888/PycharmProjects/百度地图/Data/%s.csv' % 'CityData','a+', newline='', encoding='utf-8')writer = csv.writer(csvFile)writer.writerow(('name', 'address', 'number'))
for citycode in citynumlist:
for kw in keywordlist:
for page in range(10): BusinessFromBaiduDitu(citycode=citycode, key_word=kw, pageno=page) #防止访问频率太高,避免被百度公司封
time.sleep(1)
if num%20 == 0:
time.sleep(2)
if num0== 0:
time.sleep(3)
if num%200==0:
time.sleep(7)
num = num + 1
end = time.time()lasttime = int((end-start))print('耗时'+str(lasttime)+'s')程序运行了大约三个小时,抓取了1085条有用信息信息
到此,相信大家对"怎么用Python抓取百度地图里的店名信息"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
代码
信息
地图
城市
店名
筛网
丝网
内容
数据
文件
学习
实用
更深
三个
位置
公司
关键
关键词
兴趣
名称
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
花魁咖啡
精品咖啡豆
互联网科技工作委员会副主任毛军
互联网科技官网
北京禾田雨橡互联网科技
互联网科技小额贷款
华脉科技工业互联网产品
茂名市互联网科技产业园
互联网大会黑科技排名
互联网软件和科技
昭通互联网科技选哪家
阿里互联网科技企业
威龙国际互联网科技公司
科技大学互联网
长沙互联网科技
互联网科技实习生岗位
广州千川互联网科技有限公司
易企秀互联网科技是做什么的
云南互联网科技学费
互联网科技对化妆品行业
金融科技创新监管互联网金融
与互联网科技公司
期待互联网科技
互联网 的科技创新
百单互联网科技有限公司
宝灵互联网科技有限公司
互联网在线教育科技创业
华中科技大学互联网的牛人
广州富喜互联网络科技
株洲百竞科技的互联网营销顾问