Thordata Docs
简体中文
简体中文
  • 概述
  • 代理
    • 集成教程
      • 住宅代理集成
        • AdsPower
        • BitBrowser
        • ClonBrowser
        • Hubstudio
        • Playwright
        • Puppeteer
        • Selenium
        • Ghost Browser
        • SwitchyOmega
        • FoxyProxy
        • Chrome
        • Edge
        • MuLogin
      • ISP代理集成
        • AdsPower
        • BitBrowser
        • ClonBrowser
        • Hubstudio
        • Ghost Browser
        • SwitchyOmega
        • FoxyProxy
        • Chrome
        • Edge
      • 数据中心代理集成
        • AdsPower
        • BitBrowser
        • ClonBrowser
        • Hubstudio
        • Ghost Browser
        • SwitchyOmega
        • FoxyProxy
        • Chrome
        • Edge
      • 无限代理集成
        • AdsPower
        • BitBrowser
        • ClonBrowser
        • Hubstudio
        • Ghost Browser
        • SwitchyOmega
        • FoxyProxy
        • Chrome
        • Edge
    • 住宅代理
      • 入门指南
      • 端点生成器
        • 账密认证
        • IP白名单
          • 国家条目提取
            • 国家/地区入口节点
          • API链接
      • 账户
      • 基本查询
      • 位置设置
        • 国家/地区
        • 城市
        • 州
      • 会话控制
      • 协议
      • 国家/地区列表
      • CDKEY生成与兑换
    • ISP代理
      • 入门指南
    • 数据中心代理
      • 入门指南
    • 无限代理服务器
      • 端点生成器
        • 账密认证
        • IP白名单
          • 国家条目提取
          • API链接
      • 账户
      • 国家/地区列表
  • 爬取
    • SERP API
      • 入门指南
      • API实验场
      • 发送您的第一次请求
      • 解析后的JSON结果
      • SERP API Google 查询参数
      • SERP API Bing 查询参数
  • WEB Scraper API
    • 入门指南
    • API 请求构建器
    • 抓取参数说明
  • Universal Scraping API
    • 入门指南
    • 配置
    • 参数说明
  • 免费工具
    • 谷歌扩展程序
      • 使用教程
  • 有用的链接
    • 仪表板中心
  • 常见问题
    • 产品问题
      • 我该如何选择合适的代理套餐?
      • 如何定位特定的国家/地区?
      • 如何定位特定的城市?
      • 什么是无限代理?
      • IP检测结果与购买提取的地区不符?
    • 付款问题
      • 支持哪些支付方式?
      • 购买错套餐怎么办?
      • 是否提供付费服务退款?
      • 付款后,收到代理余额或激活我的帐户需要多长时间?
  • 支持
    • 联系我们
Powered by GitBook
On this page

Was this helpful?

  1. 代理
  2. 集成教程
  3. 住宅代理集成

Selenium

PreviousPuppeteerNextGhost Browser

Last updated 3 months ago

Was this helpful?

什么是Selenium?

是一系列工具和函式库的总括项目,可实现和支援Web浏览器的自动化。

Selenium有许多功能,但其核心是一个用于Web浏览器自动化的工具集,它使用可用的最佳技术来远端控制浏览器实例并模拟使用者与浏览器的互动。

下面为您介绍如何将Thordata与Selenium集成。

1

安装Selenium

安装 Selenium Wire来扩充 Selenium的Python绑定,因为使用预设的Selenium模组来实现需要身份验证的代理程式会使整个过程变得复杂。您可以使用pip指令来完成此操作:pip install selenium-wire

此整合的另一个推荐包是 webdriver-manager。它是一个简化不同浏览器二进位驱动程式管理的套件。在这种情况下,无需在每次更新后手动下载新版本的 Web 驱动程式。

2

指定您的使用者凭证以使代理程式正常运作

USERNAME = "td-customer-USERNAME"

PASSWORD = "PASSWORD"

ENDPOINT = "t.pr.thordata.net:9999"

3

检查代理状态

通过访问ipinfo.thordata.com检查代理是否正常运作。如果一切正常 - 它将传回您正在使用的代理程式的 IP 位址。

try:
    driver.get("https://ipinfo.thordata.com/")
    return f'\nYour IP is: {driver.find_element(By.CSS_SELECTOR, "pre").text}'
finally:
    driver.quit()

完整代码示例:

from selenium.webdriver.common.by import By
from seleniumwire import webdriver
# A package to have a chromedriver always up-to-date.
from webdriver_manager.chrome import ChromeDriverManager

USERNAME = "td-customer-USERNAME"
PASSWORD = "PASSWORD"
ENDPOINT = "t.pr.thordata.net:9999"

def chrome_proxy(user: str, password: str, endpoint: str) -> dict:
    wire_options = {
        "proxy": {
            "http": f"http://{user}:{password}@{endpoint}",
            "https": f"https://{user}:{password}@{endpoint}",
        }
    }

    return wire_options

def execute_driver():
    options = webdriver.ChromeOptions()
    options.add_argument('--headless')
    proxies = chrome_proxy(USERNAME, PASSWORD, ENDPOINT)
    driver = webdriver.Chrome(
    ChromeDriverManager(driver_version='<VERSION>').install(), options=options, seleniumwire_options=proxies
    )
    try:
        driver.get("https://ipinfo.thordata.com/")
        return f'\nYour IP is: {driver.find_element(By.CSS_SELECTOR, "pre").text}'
    finally:
        driver.quit()


if __name__ == '__main__':
    print(execute_driver())

Selenium