这段代码的作用是打开网页https://op.gg/champion/Sett/statistics/Top并截取页面的一部分。
这段代码目前只能拉出https://na.op.gg/champion/statistics。我相信这就是为什么它不会截图部分的目的,我不知道如何解决它。
from selenium import webdriver
from PIL import Image
import os
def get_runes(champ, lane, dark_mode):
google_chrome_options = webdriver.chrome.options.Options()
google_chrome_options.headless = True
google_chrome_options.add_argument('--window-size=568,300')
web_driver = webdriver.Chrome(
os.getcwd() + "\chromedrive",
options=google_chrome_options
)
url = f"https://op.gg/champion/Sett/statistics/Top"
web_driver.get(url)
element = web_driver.find_element_by_class_name('perk-page-wrap')
element = element.screenshot_as_png
web_driver.close()
img = Image.open(io.BytesIO(element))
if dark_mode is True:
img = img.convert("RGBA")
data = img.getdata()
new_data = []
for item in data:
if item[0] == 245 and item[1] == 245 and item[2] == 245:
new_data.append((0, 0, 255, 0))
else:
new_data.append(item)
img.putdata(new_data)
return img发布于 2021-09-03 12:03:34
google_chrome_options.add_argument('--window-size=568,300')放
google_chrome_options.add_argument('--window-size=1920,1080')find_element_by_class_name('perk-page-wrap')匹配。这将对前两个元素执行相同的操作(其他两个元素与可见元素不匹配)
screenshots = []
elements = web_driver.find_elements_by_class_name('perk-page-wrap')
for i in range(2)
screenshot = element[i].screenshot_as_png
screenshots.append(screenshot)https://stackoverflow.com/questions/69044484
复制相似问题