selenium.获取当前页面的url、源码、title

此篇博客学习的api如标题,分别是:

  current_url    获取当前页面的url;

  page_source     获取当前页面的源码;

  title          获取当前页面的title;

 

将以上方法按顺序练习一遍,效果如GIF:

from selenium import webdriver
from time import sleep

sleep(2)
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")

# 移动浏览器观看展示
driver.set_window_size(width=500, height=500, windowHandle="current")
driver.set_window_position(x=1000, y=100, windowHandle='current')
sleep(2)

# 获取当前页面title并断言
title = driver.title
print("当前页面的title是:", title, "\n")
assert title==u"百度一下,你就知道","页面title属性值错误!"
sleep(2)

# 获取当前页面的源码并断言
pageSource = driver.page_source

try:
    assert u"百度一下,你就不知道" in pageSource, "页面源码中未找到'百度一下,你就知道'关键字"
except:
    print("源码这里故意断言错误", "\n")
sleep(2)

# 获取当前页面url并断言
currentPageUrl = driver.current_url
print("当前页面的url是:", currentPageUrl)
assert currentPageUrl == "https://www.baidu.com/", "当前网页网址非预期!"

sleep(2)
driver.quit()

 

转载于:https://www.cnblogs.com/youngleesin/p/10692675.html

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Selenium是一个流行的自动化测试工具,也可以用于网页抓取和数据提取。要在Python中使用Selenium爬取携程美食店铺的源码,你需要按照以下步骤操作: 1. **安装依赖**: 首先,确保已经安装了`selenium`, `webdriver_manager`(用于管理浏览器驱动)以及合适的浏览器驱动(如ChromeDriver)。你可以通过pip安装它们: ``` pip install selenium webdriver_manager ``` 2. **初始化浏览器**: ```python from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager driver = webdriver.Chrome(ChromeDriverManager().install()) driver.get("https://www.ctrip.com/travel/restaurants/") # 携程美食页面URL ``` 3. **定位元素**: 使用`WebDriverWait`等待特定元素加载,并找到元素的HTML标签。例如,如果你想获取菜品名称,需要找到对应的`<h3>`或`.title`类的元素: ```python from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC wait = WebDriverWait(driver, 10) title_element = wait.until(EC.presence_of_element_located((By.XPATH, "//h3[@class='title']"))) ``` 4. **获取内容**: 通过`title_element.text`获取元素的内容,这将返回菜品的标题等信息: ```python title = title_element.text ``` 5. **遍历和收集数据**: 如果有多页数据,可以使用循环结构遍历并收集所有感兴趣的数据。记得处理好分页、滚动加载等情况。 6. **保存或分析数据**: 最后,你可以选择将数据保存到文件,数据库,或是进一步进行数据分析。 ```python # 示例:假设你想把所有菜品名存储在一个列表中 titles_list = [] all_titles = driver.find_elements_by_xpath("//h3[@class='title']") for title in all_titles: titles_list.append(title.text) # ...然后可以选择写入文件或数据库... ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值