首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AttributeError: Web_scraping对象没有属性“_Web_scraping__headless”

AttributeError: Web_scraping对象没有属性“_Web_scraping__headless”
EN

Stack Overflow用户
提问于 2022-09-11 23:13:54
回答 1查看 48关注 0票数 1

我有一个attributeError AttributeError:'Web_scraping‘对象没有属性'_Web_scraping__headless’

代码语言:javascript
复制
import time
import os
from scraping.browser_manager import constants as const
from selenium import webdriver 
from selenium.webdriver.common.by import By

from scraping.browser_manager.automate_browser import Browser_bot

class Web_scraping():
    
    def __init__(self):

        # self.scraper instance
        self.scraper = Browser_bot(headless=self.__headless)

    def accept_cookies(self):
        cookies = self.find_element(By.CSS_SELECTOR,
           '.sui-TcfFirstLayer-buttons > button:nth-child(2)'
        )
        time.sleep(5)
        cookies.click()

这是run.py函数

代码语言:javascript
复制
from scraping.scraper import Web_scraping

try:

    with Web_scraping() as bot:
         bot.accept_cookies()
EN

回答 1

Stack Overflow用户

发布于 2022-09-12 07:46:45

首先,它应该是:

代码语言:javascript
复制
class WebScraping:

而不是:

代码语言:javascript
复制
class Web_scraping():

(括号是多余的,PEP 8的类名样式指南建议您使用CamelCaseNames)

无论如何,我根本不会使用scraping模块(我不明白为什么要使用tbh),并执行如下操作:

代码语言:javascript
复制
from selenium import webdriver
from selenium.webdriver.firefox.options import Options as FirefoxOptions
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


class WebScraping:
    def __init__(self):
        options = FirefoxOptions()
        # options.add_argument("--headless")
        self.scraper = webdriver.Firefox(options=options)
        self.scraper.get("https://www.google.com/")

    def accept_cookies(self):
        cookies = WebDriverWait(self.scraper, 30).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='QS5gu sy4vM']"))).click()


x = WebScraping()
x.accept_cookies()

(请注意,我使用的是显式等待而不是更糟糕的time.sleep())

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73683207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档