python - 尝试调用网站返回“无类型”,知道为什么吗?
问题描述
当我运行以下代码时,当我使用 find 元素时,变量 test 显示为“NoneType”,它给出了错误。我不明白为什么它不能正确调用网站。它在我的另一个脚本中工作我在这里复制了 test2 变量,它也不起作用。
import weslib as wl
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
#define web drivers
opt = webdriver.ChromeOptions()
opt.add_argument('headless')
opt.add_argument('--ignore-certificate-errors')
opt.set_capability("acceptInsecureCerts", True)
serv = Service("d:\webdrivers\chromedriver")
driver = webdriver.Chrome(service=serv,options=opt)
tickerlist = ['AAPL']
for stock in tickerlist:
try:
stockurl = 'http://www.finviz.com/quote.ashx?t=' + str(stock)
test = driver.get(stockurl)
test2 = driver.get('https://www.zacks.com/stock/quote/' + stock[0] + '/detailed-estimates')
fvstats = wl.scrapetable(stockurl, '/html/body/div[8]/div/table[2]', driver)
fvanalyses = wl.scrapetable(stockurl, '/html/body/div[8]/div/table[3]/tbody/tr[4]/td/table/tbody', driver)
fvinsidertrading = wl.scrapetable(stockurl, '/html/body/div[8]/div/table[3]/tbody/tr[12]/td/table/tbody', driver)
wl.insert_values(conn, fvstats, 'stats', stock[0], 'finviz1')
wl.insert_values(conn, fvanalyses, 'analyses', stock[0], 'finviz2')
wl.insert_values(conn, fvinsidertrading, 'insidertrading', stock[0], 'finviz3')
except (Exception) as error:
print('finviz', stock[0],'', str(error))
wl.joblog('finviz', stock[0],'', str(error))
continue
解决方案
推荐阅读
- python - 根据集合上的元素重复数据框
- arrays - 在 awk 中对块内的行进行排序
- java - 具有两个方法参数的访问者模式
- angular - Pipe and Tap VS 使用 ngxs 订阅
- javascript - 如何在javascript中查找一个数字是否是另一个数字的排列
- css - z-index 和堆叠顺序
- python - 为什么我的字体在 tkinter 中无法正确显示?
- python - 为 NN 改组两个 numpy 数组
- java - 将文本文件读入 JTable JAVA 用于库存系统
- javascript - 无法使用 react-native-svg-charts 显示图标