如何让我的脚本检测到用户选择了什么剧集,以便在播放下一集时按顺序播放? python 3.5

时间:2016-01-18 02:34:17

标签: python python-3.x selenium selenium-webdriver

我很难正确地表达我的问题,但希望我能够清楚地解释我遇到的问题,因为我很难绕过它。 (这是我的第一个项目)

好的,所以我制作了一个脚本,要求用户提供链接,然后是剧集编号,所以让我说输入链接然后输入剧集编号5。 我的脚本将转到输入的链接和剧集编号,进行一系列点击和繁荣,通过某个网站自动观看电视。现在我已经将导入时间23分钟转换为秒。时间.sleep。一旦时间到了,脚本将返回到输入的网址并选择一集,但我有脚本的下一部分寻找第2集'然后再次进行一系列点击。我遇到的问题是我并不总是会出现在我正在观看的电视节目的第1集中,所以我的问题是如何让脚本检测到这一点然后转到下一集而不是'第2集'?我想也许if语句会起作用,但我不确定如何输入我尝试过 如果eleml!='第2集' 下一步(F)

我尝试过继续使用。我的想法是我可以让脚本检查它是否相等然后跳过接下来的3行并检查('第3集')等等,直到它找到正确的剧集。

以下是我项目的完整来源

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options

    chop = webdriver.ChromeOptions()
    chop.add_extension('Adblock-Plus_v1.10.crx')# installs adblock every time script is ran.

    print ('please input a new url')
    url = input()
    print ('please enter episode number') # enter episode number I.E 1,2,3 etc.
    num = input()
    driver = webdriver.Chrome(chrome_options = chop)
    driver.get(url)
    eleml = driver.find_element_by_link_text('Episode ' + (num))  #clicks episode + number of episode that is entered by user.
    eleml.click()

    import time
    time.sleep(10)

    eleml = driver.find_element_by_link_text('PLAY NOW')

    action = webdriver.common.action_chains.ActionChains(driver)
    action.move_to_element_with_offset(eleml,200,200)
    action.click()
    action.perform()

    import time
    time.sleep(10)

    action = webdriver.common.action_chains.ActionChains(driver)
    action.move_to_element_with_offset(eleml,200,200)
    action.click()
    action.perform()

    action = webdriver.common.action_chains.ActionChains(driver)
    action.move_to_element_with_offset(eleml,200,200)
    action.click()
    action.perform()



    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 2')
    eleml.click()


    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 3')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 4')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 5')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 6')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 7')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 8')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 9')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 10')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 11')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 12')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 13')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)
    eleml = driver.find_element_by_link_text('Episode 14')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 15')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 17')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 18')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 19')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 20')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 21')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 22')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 23')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 24')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 25')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 26')
    eleml.click()

    import time
    time.sleep(1320)

    print ('please enter the next season link or a new url')
    new = input()
    driver.get (new)


    import time
    time.sleep(1320)
    driver.get(url)

    eleml = driver.find_element_by_link_text('Episode 1')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 2')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 3')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 4')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 5')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 6')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 7')
    eleml.click()

    import time
    time.sleep(1320)
    driver.getnew()

    eleml = driver.find_element_by_link_text('Episode 8')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 9')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 10')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 11')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 12')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 13')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)
    eleml = driver.find_element_by_link_text('Episode 14')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 15')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 17')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 18')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 19')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 20')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 21')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 22')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 23')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 24')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 25')
    eleml.click()

    import time
    time.sleep(1320)
    driver.get(new)

    eleml = driver.find_element_by_link_text('Episode 26')
    eleml.click()

    import time
    time.sleep(1320)   

    print ('You have been watching for too long, take a break or restart the script')

请注意,我没有包含我使用的网站,因为我不确定本网站的规则,并且不想违反任何网站。

1 个答案:

答案 0 :(得分:0)

只需按链接文字选择下一集

driver.find_element_by_link_text('Episode %d' % (num + 1))