selenium 调用本地浏览器 不需要携带cookies

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
import random  # 用于生成随机值

# 配置 ChromeDriver 连接到调试端口
chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
# 使用与现有浏览器连接的驱动
driver = webdriver.Chrome(options=chrome_options)

# 打开一个新标签页
driver.execute_script(
    "window.open('https://www.example.com', '_blank');")

# 切换到新标签页
driver.switch_to.window(driver.window_handles[-1])

# 获取页面的总高度
total_height = driver.execute_script("return document.body.scrollHeight")

# 模拟慢慢滑动至底部,滚动距离和时间间隔随机化
scroll_position = 0
while scroll_position < total_height:
    # 滚动一个随机距离
    scroll_distance = random.randint(300, 500)  # 每次滑动20到100px
    scroll_position += scroll_distance
    driver.execute_script(f"window.scrollTo(0, {scroll_position});")

    # 随机间隔时间
    delay = random.uniform(2.0, 3.0)  # 滑动间隔在0.1到0.5秒之间
    time.sleep(delay)
    driver.refresh()

# 最后滚动至页面底部
driver.execute_script(f"window.scrollTo(0, {total_height});")

# 等待一段时间以确保滚动效果完成
time.sleep(3)
# 关闭浏览器
driver.quit()

 

posted @ 2024-12-24 16:53  lvye001  阅读(2)  评论(0编辑  收藏  举报