我用python编写了两个脚本:一个使用
selenium
另一个使用
requests
http://check.torproject.org
使用
托尔
得到这段文字
祝贺 你。此浏览器配置为使用Tor
为了确保我做的事情是正确的。
当我使用下面的脚本时,我可以流畅地获得文本:
from selenium import webdriver
import os
torexe = os.popen(r"C:\Users\WCS\Desktop\Tor Browser\Browser\TorBrowser\Tor\tor.exe")
options = webdriver.ChromeOptions()
options.add_argument('--proxy-server=socks5://localhost:9050')
driver = webdriver.Chrome(chrome_options=options)
driver.get("http://check.torproject.org")
item = driver.find_element_by_css_selector("h1.not").text
print(item)
driver.quit()
但是,当我尝试使用
请求
,我得到一个错误
AttributeError: 'NoneType' object has no attribute 'text'
:
import requests
from bs4 import BeautifulSoup
import os
torexe = os.popen(r"C:\Users\WCS\Desktop\Tor Browser\Browser\TorBrowser\Tor\tor.exe")
with requests.Session() as s:
s.proxies['http'] = 'socks5://localhost:9050'
res = s.get("http://check.torproject.org")
soup = BeautifulSoup(res.text,"lxml")
item = soup.select_one("h1.not").text
print(item)
我怎样才能得到相同的文字使用
请求
从那个网站?
当我用这个的时候
print(soup.title.text)
,我可以得到这个文本
Sorry. You are not using Tor.
请求
不是通过
Tor
.