← 返回 Day 129 正文

Day 129 · 练习与清单

Day 129 - 动态渲染(Selenium) 完成清单与练习

✅ 完成清单

📝 练习题

练习 1(基础)

用无头 Selenium 打开 http://quotes.toscrape.com/js/,等第一条名言出现后,打印页面标题和前 5 条名言的作者。

练习 2(进阶)

分别用 ID、CLASS_NAME、CSS_SELECTOR、XPath 四种方式定位页面上同一个元素(比如第一条名言的文本),体会不同定位器的写法差异。

练习 3(避坑)

解释这段代码可能出现的两种失败场景,并改成显式等待:

python
driver.get(url)
time.sleep(3)
driver.find_element(By.ID, "search").send_keys("python")

练习 4(综合)

写一个爬虫:抓取 quotes.toscrape.com/js/ 全站名言,要求: 1. 无头模式 + 反检测参数; 2. 显式等待渲染完成; 3. 翻页时用 staleness_of 防止抓到重复数据; 4. 结果按作者分组统计数量后输出 TOP5。

练习 5(思考)

在 F12 Network 的 XHR 面板里观察 quotes.toscrape.com/js/ 页面加载过程:数据是页面自带的还是后续请求拿到的?如果是后者,说明你能不能绕开 Selenium 直接拿数据?