我正在尝试从这样的页面上抓取匹配信息(页面的格式相同,但显然不同匹配具有不同的值):https : //csgolounge.com/match?m=8967
问题是,只有在您使用Chrome扩展程序“休息室毁灭者”时,才会显示我想要的信息...经过无数次的反复试验,我终于弄清楚了,为了获取该信息,我使用了python脚本使用必须以某种方式将扩展名“包含在其中”。我在这里浏览了其他答案,并从另一个stackoverflow线程中找到了此代码,该线程演示了如何在使用硒时添加扩展名:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chop = webdriver.ChromeOptions()
chop.add_extension('Adblock-Plus_v1.4.1.crx')
driver = webdriver.Chrome(chrome_options = chop)
我去了Chrome Extension Downloader来为LoungeDestroyer捕获.crx文件,将其放在chrome扩展文件夹中(从“获取信息”中获取文件地址),并为我的目的修改了上面的代码以获取以下内容:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chop = webdriver.ChromeOptions()
chop.add_extension('Users/Username_Here/Library/Application Support/Google/Chrome/Default/Extensions/ghahcnmfjfckcedfajbhekgknjdplfcl/LoungeDestroyer_v0.9.3.7.crx')
driver = webdriver.Chrome(chrome_options = chop)
matchID = raw_input("Enter match ID (four digit number in CSGL URL): ")
driver.get("https://csgolounge.com/match?m="+matchID)
问题是,我认为在原始代码中'Adblock-Plus_v1.4.1.crx'所在的位置我没有替换正确的东西。
运行修改后的版本会返回以下错误:
IOError: Path to the extension doesn't exist
任何帮助或建议,我们将不胜感激。
问题是我没有安装chromedriver(http://chromedriver.storage.googleapis.com/index.html?path=2.21/)。安装完之后,我必须在代码中输入chromedriver可执行文件的路径。总而言之,这是有效的代码:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chop = webdriver.ChromeOptions()
chop.add_extension('/Users/Username_Here/Library/Application Support/Google/Chrome/Default/Extensions/ghahcnmfjfckcedfajbhekgknjdplfcl/LoungeDestroyer_v0.9.3.7.crx')
driver = webdriver.Chrome(executable_path='/Users/Username_Here/Downloads/chromedriver', chrome_options = chop)
# go to the match page
matchID = raw_input("Enter match ID (four digit number in CSGL URL): ")
driver.get("https://csgolounge.com/match?m="+matchID)
另外,我得到扩展路径错误的原因是因为我在文件地址中的“用户”一词前没有正斜杠。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句