实际上,我在C:/tor/
中有提取的文件,而另一个文件夹在Desktop中。我正在尝试以下代码
import tbselenium.common as cm
from tbselenium.tbdriver import TorBrowserDriver
from tbselenium.utils import launch_tbb_tor_with_stem
tbb_dir = 'C:/Users/myName/Desktop/Tor Browser/'
tor_process = launch_tbb_tor_with_stem(tbb_path=tbb_dir)
with TorBrowserDriver(tbb_dir) as driver:
driver.load_url("https://check.torproject.org")
tor_process.kill()
但是我得到tbselenium.exceptions.StemLaunchError: Invalid Tor binary
并不是我必须指定的路径,我尝试了以下路径
C:/Users/myName/Desktop/Tor Browser/Browser/
C:/Users/myName/Desktop/Tor Browser/Browser/firefox.exe
C:/tor/Browser/firefox.exe
C:/tor/Browser/
C:/tor
对于上述所有路径,我遇到相同的错误。我不知道如何为tbselenium指定路径
答案 0 :(得分:1)
我希望这个答案能对您有所帮助。
from selenium import webdriver
from itertools import cycle
from seleniumwire import webdriver
profile = webdriver.FirefoxProfile()
socks=["178.62.193.19","176.9.75.42","120.132.52.180"]
ports=[8080,3128,8888]
socks_ports={}
socks_ports=dict(zip(socks,ports))
socks_pool=cycle(socks_ports.keys())
ports_pool=cycle(socks_ports.values())
def ChangeProxy(ProxyHost,ProxyPort):
options = {
'proxy': {
'http': 'http://username:password@'+str(ProxyHost)+':'+str(ProxyPort),
'https': 'https://username:password@'+str(ProxyHost)+':'+str(ProxyPort),
'no_proxy': 'localhost,127.0.0.1,dev_server:8080'
}
}
return webdriver.Firefox(seleniumwire_options=options)
while True:
socks_item=next(socks_pool)
ports_item=next(ports_pool)
print(type(socks_item))
print(type(ports_item))
try:
driver=ChangeProxy(socks_item,ports_item)
driver.get("https://www.ipchicken.com/")
except:
continue
P.S。
我已经尝试了很多次了。您应该尝试查找主机和端口并添加到上面的阵列中。
答案 1 :(得分:0)
我认为更好的解决方案是手动代理您的Selenium驱动程序并使用Firefox。我对tbselenium
软件包有很多疑问,所以我开始认为它不起作用。
如果您正在运行一个Tor实例(而不是浏览器)并且已成功为硒配置geckodriver
,这应该可以解决问题。
from selenium import webdriver
profile = webdriver.FirefoxProfile()
profile.set_preference("network.proxy.type", 1)
profile.set_preference("network.proxy.socks", "127.0.0.1")
profile.set_preference("network.proxy.socks_port", 9050)
profile.set_preference("network.proxy.socks_version", 5)
profile.update_preferences()
driver = webdriver.Firefox(firefox_profile=profile)
driver.get("http://whatismyip.com")
此外,如果您需要在Windows上启动Tor实例(不是浏览器)的帮助,请告诉我。
答案 2 :(得分:-1)
嘿,我很确定我找到了答案here:
不支持 Windows!