在错误中停留了很长时间,所以我希望有人能够提供帮助!
我有一段代码如下:
urls = driver.find_elements_by_xpath('//*[@href]')
for url in urls:
hopeful = url.get_attribute('ping')
print(hopeful)
actual = hopeful[31:]
driver.get(actual)
time.sleep(4)
driver.close
运行代码时,出现以下错误:
TypeError: 'NoneType' object is not subscriptable
在输出中,我事先获得了一些不需要的方面的URL,这就是为什么我尝试使用substring函数删除前31个字符的原因,这将使我留下URL,使我可以将其传递到{{1 }}。
有没有办法从返回并尝试对字符串driver.get()
进行子处理中删除程序,从而导致错误?
答案 0 :(得分:0)
这可能很幼稚,但为什么不检查None?
您没有提供触发错误的确切行,所以我想它是hopefull[31]
。
urls = driver.find_elements_by_xpath('//*[@href]')
for url in urls:
hopeful = url.get_attribute('ping')
if hopeful and len(hopeful) > 31:
print(hopeful)
actual = hopeful[31:]
if actual.startswith('uk.linkedin.com'):
driver.get(actual)
time.sleep(4)
driver.close