Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python I';我制作了一个机器人,它喜欢每一篇不是';我还不喜欢_Python_Selenium - Fatal编程技术网

Python I';我制作了一个机器人,它喜欢每一篇不是';我还不喜欢

Python I';我制作了一个机器人,它喜欢每一篇不是';我还不喜欢,python,selenium,Python,Selenium,问题是它不喜欢这些帖子 我尝试过difren方法,比如tagname from selenium import webdriver from selenium.webdriver.common.keys import Keys import time def like_photo(self): driver = self.driver driver.get("https://www.instagram.com") time.sleep

问题是它不喜欢这些帖子

我尝试过difren方法,比如tagname


from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time


    def like_photo(self):
        driver = self.driver
        driver.get("https://www.instagram.com")
        time.sleep(1)
        for i in range(1, 4):
            driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
            time.sleep(2)

        # find all the heart links
        hrefs = driver.find_elements_by_xpath("//span[@aria-label='Synes godt om']")
        pic_hrefs = [elem.get_attribute('href') for elem in hrefs]
        pic_hrefs = [href for href in pic_hrefs]
        print(' Photos ' + str(len(pic_hrefs)))

        for _ in pic_hrefs:
            driver.get("https://www.instagram.com")
            driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
            try:
                like_button = lambda: driver.find_elements_by_xpath("//span[@aria-label='Synes godt om']")
                like_button.click()
                time.sleep(18)
            except Exception as e:
                time.sleep(1)


nameIG = InstagramBot(username, password)
nameIG.login()
nameIG.like_photo()


它不像任何帖子,输出的只是:照片4


使用退出代码0完成的进程

退出代码0
表示您的代码运行时没有错误。然而,仍然存在一个问题

若要查看代码中是否存在实际错误,请更改异常操作

    except Exception as e:
        print(e)  # shows actual error
试试这个:

like_buttons = driver.find_elements_by_xpath(some_xpath_to_buttons)  # list of WebElements
for button in like_buttons:
    button.click()
    time.sleep(18)

输入第二个代码后:Message:element click intercepted:element在点(634,5)处不可单击。其他元素将收到单击:。。。(会话信息:chrome=75.0.3770.142)x 10打开浏览器控制台,检查xpath是否正在查找所需内容。本文将帮助您开始:。一旦你有了正确的xpath,就使用它。正如你在这里看到的:机器人可以看到按钮,但不能点击它。如果错误代码为:Message:element click intercept:element。。。在点(69,20)处不可单击。其他元素将收到单击:。。。(会话信息:chrome=75.0.3770.142)请注意,一个好的堆栈溢出问题是关于一个特定的问题,只需要最短的代码来隔离该问题。因此,在理想的情况下,可以隔离出不起作用的特定XPath查询,并编写最短的测试工具,其他人可以在提问之前运行这些测试工具来亲自查看它是否起作用。