import time
from selenium import webdriver
import pandas as pd
import numpy as np
# 调用谷歌浏览器
driver = webdriver.Chrome()
time0 = time.time() # 计时开始
# 循环
for num, city in enumerate(cityname):
driver.get('https://www.google.co.uk/webhp?hl=en&sa=X&ved=0ahUKEwimtcX24cTfAhUJE7wKHVkWB5AQPAgH')
time.sleep(0.3) # 停留0.3秒
search_box = driver.find_element_by_name('q') # 锁定搜索框
# search_box.send_keys('中南财经政法大学')
search_box.send_keys('%s Australia Latitude and longitude' % (city)) # 在输入框中输入城市 澳大利亚 经度和纬度
search_box.submit() # enter 搜索
result = driver.find_element_by_xpath('//div[@class="Z0LcW XcVN5d"]').text # 提取经纬度
result_city = driver.find_element_by_xpath('//span[@class="GzssTd"]/span').text
# print(result_city, result)
resultsplit = result.split(" ")
print(resultsplit)
df.loc[num, 'City'] = city # 第一列:城市名
df.loc[num, 'Latitude'] = resultsplit[0] # 第二列:纬度
df.loc[num, 'Longitude'] = resultsplit[1][0] # 第三列:经度
df.loc[num, 'Latitudedir'] = resultsplit[2] # 第四列:纬度的方向
df.loc[num, 'Longitudedir'] = resultsplit[3] # 第五烈:经度的方向
print('%i webcrawler successful for city %s, web_city is %s' % (num + 1, city, result_city))
time.sleep(1) # 全部爬取完成,休息1秒
driver.quit() # 关闭浏览器
print(time.time() - time0)
利用webdriver.Chrome爬取澳大利亚城市的经纬度信息
最新推荐文章于 2022-05-29 15:51:18 发布