如何使用Python Selenium从fakeaddressgenerator提取指定地址信息
Python Selenium提取虚假美国地址信息代码实现
前置依赖安装
- 首先安装Selenium第三方库:
pip install selenium - 下载和你本地浏览器版本匹配的WebDriver(比如Chrome对应ChromeDriver、Edge对应EdgeDriver),可以选择将WebDriver路径配置到系统环境变量,也可以直接在代码中指定路径。
完整可运行代码
from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.chrome.service import Service import time # 初始化浏览器驱动,未配置环境变量的话可以在Service参数中传入WebDriver的本地路径 driver = webdriver.Chrome(service=Service()) # 打开目标地址生成页面 driver.get("https://www.fakeaddressgenerator.com/World_Address/get_us_address1") # 等待页面加载完成,网络慢可以调大等待时长 time.sleep(3) # 逐个提取指定字段内容 street = driver.find_element(By.XPATH, "//strong[text()='Street']/following::span[1]").text.strip() city = driver.find_element(By.XPATH, "//strong[text()='City']/following::span[1]").text.strip() state_abbr = driver.find_element(By.XPATH, "//strong[text()='State/Province abbr']/following::span[1]").text.strip() state_full = driver.find_element(By.XPATH, "//strong[text()='State/Province full']/following::span[1]").text.strip() zip_code = driver.find_element(By.XPATH, "//strong[text()='Zip Code/Postal code']/following::span[1]").text.strip() mobile_num = driver.find_element(By.XPATH, "//strong[text()='Mobile Number']/following::span[1]").text.strip() # 按要求格式打印 print(street) print(city) print(state_abbr) print(state_full) print(zip_code) print(mobile_num) # 关闭浏览器释放资源 driver.quit()
注意事项
- 代码使用XPATH通过字段文本定位对应内容,不需要依赖易变的类名或id,稳定性更高
- 如果运行时出现元素找不到的报错,首先确认页面是否加载完成,可适当调大等待时间,或者替换为Selenium显式等待逻辑
- 提取到的字段可根据自身需求做后续处理,比如存入表格、写入本地文件等。
内容的提问来源于stack exchange,提问作者Muazam
相关产品推荐
相关产品推荐

