无法在python中打印

问题描述 投票:0回答:2

最近几周我一直在研究Python以自​​动完成我的业务。

基本来说,我必须进行网络抓取,但是我在倒数第二行的代码中遇到打印功能问题...

            def search_time(self):
    for item in self.items:
        print(f"Procurando {item}.")

        self.driver.get(self.bot_url)

        cpfBox = self.driver.find_element_by_xpath('//*[@id="search"]/div/div[1]/input')
        cpfBox.send_keys(item)

        time.sleep(2)

        cpfButton = self.driver.find_element_by_xpath('//*[@id="search"]/div/div[2]/button')
        cpfButton.click()

        time.sleep(2)

        self.delay = 3  # seconds



    try:
        WebDriverWait(self.driver, self.delay).until(EC.presence_of_element_located((By.XPATH, '//*[@id="main"]/div[1]/h2')))
        print('CPF Valido')
    except TimeoutException:
        print('CPF Invalido')

        time.sleep(2)

        name = self.driver.find_element_by_xpath("/html/body/main[1]/div[1]/div[1]/div[1]/div[1]/h2").text
        print(name)

        time.sleep(2)


items = ["32911769953"]


bot_url = BOT(items)
bot_url.search_time()
python screen-scraping
2个回答
0
投票

检查xpath是否确实是您要通过硒获取的文本的正确路径。

如果这是一个网站,则可以转到您要查找的元素,然后右键单击并选择“复制XPATH”。

如果您可以在问题中添加更多上下文,那就太好了!

请注意安全!


0
投票

首先,我建议对您的xpath查询进行一般化。当前,它在很大程度上取决于整个页面的结构。在页面的无关部分中进行小的版式更改可能会给您带来不良的结果。复习xpath syntax和[谓词]的使用将在将来为您节省很多麻烦。

如果没有帮助,请发布您尝试解析的html。

© www.soinside.com 2019 - 2024. All rights reserved.