Python Bot Twitch查看器硒

问题描述

所以基本上,我正在研究一个python脚本,该脚本登录到一个twitch帐户并停留在那里以生成查看器。

但是我的主要问题是如何使该功能适用​​于多个帐户。

如何隐藏Windows,如何处理多个硒窗口?

硒对它有好处吗?或者还有其他方法吗?

from selenium import webdriver
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--mute-audio")
driver = webdriver.Chrome("D:\Downloads\chromedriver_win32\chromedriver.exe",chrome_options=chrome_options)


driver.minimize_window()

driver.get('https://www.twitch.tv/login')
search_form = driver.find_element_by_id('login-username')
search_form.send_keys('user')
search_form = driver.find_element_by_id('password-input')
search_form.send_keys('password')
search_form.submit()
driver.implicitly_wait(10)
driver.get('https://www.twitch.tv/channel')

解决方法

您绝对可以使用Selenium和Python来执行此操作。要运行多个帐户,您将必须利用多线程或创建多个驱动程序对象进行管理。

来自this线程的多线程示例:

from selenium import webdriver
import threading
import time

def test_logic():
    driver = webdriver.Firefox()
    url = 'https://www.google.co.in'
    driver.get(url)
    # Implement your test logic
    time.sleep(2)
    driver.quit()

N = 5   # Number of browsers to spawn
thread_list = list()

# Start test
for i in range(N):
    t = threading.Thread(name='Test {}'.format(i),target=test_logic)
    t.start()
    time.sleep(1)
    print t.name + ' started!'
    thread_list.append(t)

# Wait for all thre<ads to complete
for thread in thread_list:
    thread.join()

print 'Test completed!'

每个驱动程序将必须使用代理连接来连接到单独IP地址上的Twitch。我建议您使用Opera,因为它具有内置的VPN,使操作变得简单得多。

来自this线程的Opera和Selenium示例:

from selenium import webdriver
from time import sleep

# The profile directory which Opera VPN was enabled manually using the GUI
opera_profile = '/home/user-directory/.config/opera' 
options = webdriver.ChromeOptions()
options.add_argument('user-data-dir=' + opera_profile)
driver = webdriver.Opera(options=options)
driver.get('https://whatismyipaddress.com')
sleep(10)
driver.quit()

要隐藏Webdriver的控制台,必须使用“ headless”选项运行它们。 Headless for chrome driver

from selenium import webdriver from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument("--headless")

不幸的是,Opera驱动程序不支持headless,因此您必须为此使用Chrome或Firefox。

祝你好运!

,

您好,您将无法使用硒创建机器人,因为即使您设法连接了twitch帐户上的多个帐户,twitch(如youtube)的系统也会查看您的IP地址,并且不会增加查看多个连接是否来自同一台计算机。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...