从https://bj.jiazhenggang.com/xuanren/fenlei-110.html这个网页爬虫爬取护工个人信息Python代码
时间: 2024-01-02 11:05:21 浏览: 72
由于该网页是动态加载的,因此我们可以使用Selenium库来模拟浏览器行为进行爬取。以下是一个示例代码:
```python
from selenium import webdriver
import time
# 设置Chrome浏览器驱动程序的路径
driver_path = '/path/to/chromedriver'
# 创建Chrome浏览器驱动程序对象
driver = webdriver.Chrome(executable_path=driver_path)
# 打开网页
url = 'https://bj.jiazhenggang.com/xuanren/fenlei-110.html'
driver.get(url)
# 等待页面加载完成
time.sleep(3)
# 点击“更多”按钮,加载所有护工信息
while True:
try:
more_btn = driver.find_element_by_css_selector('.more')
more_btn.click()
time.sleep(2)
except:
break
# 获取所有护工信息
nurses = driver.find_elements_by_css_selector('.hugong')
for nurse in nurses:
# 解析护工信息
name = nurse.find_element_by_css_selector('.name').text
age = nurse.find_element_by_css_selector('.age').text
service_time = nurse.find_element_by_css_selector('.time').text
price = nurse.find_element_by_css_selector('.price').text
address = nurse.find_element_by_css_selector('.area').text
phone = nurse.find_element_by_css_selector('.phone').text
# 输出护工信息
print(name, age, service_time, price, address, phone)
# 关闭浏览器驱动程序
driver.quit()
```
其中,需要将`/path/to/chromedriver`替换为你本地Chrome浏览器驱动程序的路径。此外,由于该网页加载速度较慢,因此我们需要使用`time.sleep()`来等待页面加载完成。在解析护工信息时,我们使用了Selenium的`find_element_by_css_selector()`方法来定位网页元素,并使用`.text`属性获取文本内容。最后,我们使用`driver.quit()`方法来关闭浏览器驱动程序。
阅读全文