最近一个项目有需求如下:确定一批地址的具体信息(精确到省市区),有些地址是很模糊的,需要百度搜索。但是数量很大所以如果用百度一个个查会很慢。于是想到利用selenium操纵百度地图,通过自动输入地址和获取搜索结果加上一定的字符串处理就可以批量完成这个任务。
先上代码:
# coding: utf-8
# 作者(@Author): Messimeimei
# 创建时间(@Created_time): 2024/1/15 16:01
""""""
def getAddress(locations: list) -> list:
"""
输入待查询的地址列表,以列表形式返回每个地址在百度地图查询到的第一个地址
:param locations:地址列表
:return:列表形式的地址
"""
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
searched_arr = [] # 保存搜索到的内容
options = webdriver.ChromeOptions()
options.add_argument("-headless") # 不显示浏览器
driver = webdriver.Chrome() # 添加options就不显示,这里没添加
driver.get("https://map.baidu.com/@12713770.095,3547943.7200000007,19z")
print(locations