Playwright和Selenium都是用于Web UI自动化测试的工具,但是它们有一些不同的特点和功能。
根据以上的介绍,我们可以看出Playwright和Selenium各有优缺点。
所以,在选择使用哪个工具的时候,需要根据自己的需求和情况来决定。如果你想要快速上手一个简单方便且功能强大的工具,那么Playwright可能更适合你。下面以python使用Playwright采集航班信息https://www.luckyair.net 为示例:
# 使用playwright.chromium
from playwright.sync_api import sync_playwright
# 设置亿牛云(动态转发隧道代理)爬虫代理加强版 代理IP的用户名和密码
proxy_username = "16IP"
proxy_password = "16YUN"
with sync_playwright() as p:
# 启动chromium浏览器,并设置代理
browser = p.chromium.launch(proxy={"server": f"http://{proxy_username}:{proxy_password}@your_proxy_ip:your_proxy_port"})
# 启动 Chromium
browser = p.chromium.launch()
# 设置亿牛云(动态转发隧道代理)爬虫代理加强版 代理IP的服务器
context = browser.new_context(proxy={
"server": "http://www.16yun.cn:31000",
"username": proxy_username,
"password": proxy_password
})
# 创建一个新页面
page = context.new_page()
# 访问网站 https://www.luckyair.net
page.goto("https://www.luckyair.net")
# 等待页面加载完成
page.wait_for_load_state("networkidle")
# 获取特价机票信息的元素列表
tickets = page.query_selector_all(".special-ticket-item")
# 创建一个空列表,用于存储特价机票信息
data = []
# 遍历每个元素,获取相关信息
for ticket in tickets:
# 获取出发地、目的地、价格、日期等信息
departure = ticket.query_selector(".departure").inner_text()
destination = ticket.query_selector(".destination").inner_text()
price = ticket.query_selector(".price").inner_text()
date = ticket.query_selector(".date").inner_text()
# 将信息存入字典中
info = {
"departure": departure,
"destination": destination,
"price": price,
"date": date
}
# 将字典添加到列表中
data.append(info)
# 关闭浏览器
browser.close()
# 进行整理统计
# 导入pandas模块,用于数据分析
import pandas as pd
# 将列表转换为DataFrame对象
df = pd.DataFrame(data)
# 打印DataFrame对象
print(df)
# 按照价格升序排序
df.sort_values(by="price", inplace=True)
# 打印排序后的DataFrame对象
print(df)
# 统计每个出发地的特价机票数量
count = df.groupby("departure").size()
# 打印统计结果
print(count)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。