谁能解释这个Selenium错误以及为什么Selenium在一个查询而不是另一个查询上起作用

时间:2018-09-20 01:47:27

标签: python selenium selenium-webdriver

我之前曾问过这个问题,但没有任何回应,因此我将重试。

我的硒和chromedriver一直存在问题,我似乎无法弄清。我有一个代码可以很好地运行并完成了它应该做的所有事情。但是,我还有另一个可以给我图片中的错误代码。如果有人可以提供帮助,我当然会很感激,因为我在网上找不到任何运气。我特别不明白为什么一个程序运行没有问题,而另一个程序没有问题。我不知道该网站是否可能阻止它运行?有可能吗?

运行正常的代码:

from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.keys import Keys
import time

beginningTime = time.time()
browser = webdriver.Chrome()
time.sleep(3)

browser.get('http://droughtmonitor.unl.edu/Data/DataDownload/ComprehensiveStatistics.aspx')
browser.maximize_window()
dropdown = browser.find_element_by_xpath("""//*[@id="dnn_ctr1009_USDMservice_CompStats_2017_aoiType_chosen"]""")

无效的代码:

import numpy as np
from bs4 import BeautifulSoup
import requests
import pandas as pd
import time
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.keys import Keys


beginningTime = time.time()
browser = webdriver.Chrome()
symbols = ['WYNN', 'FL', 'TTWO', 'NKE']
myColumnHeaders = ['Date', 'Open', 'High', 'Low', 'Close', 'Volume']

dfs = []

for c in range(len(symbols)):
    url = 'https://www.nasdaq.com/symbol/'+symbols[c]+'/historical'
    print('read url')
    time.sleep(3)
    browser.get(url)
    time.sleep(3)
    print('here')

它打印“读取URL”并打开网页,但从不打印“此处”步骤。然后,它将注释作为图片附带在命令提示符下。任何帮助将不胜感激。

Error code I'm getting Further Notes error throws

1 个答案:

答案 0 :(得分:1)

您正试图告诉您的驱动程序将您定向到URL并将参数url传递给该URL。此参数先前未在您的代码中定义。

如果您尝试从驱动程序获取当前网址,请使用:

browser.current_url