Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.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 错误:AttributeError:&x27;非类型';对象没有属性';查找';_Python_Python 3.x_Web Scraping - Fatal编程技术网

Python 错误:AttributeError:&x27;非类型';对象没有属性';查找';

Python 错误:AttributeError:&x27;非类型';对象没有属性';查找';,python,python-3.x,web-scraping,Python,Python 3.x,Web Scraping,我正在写一个网页垃圾代码,我得到了上面的错误 import requests import lxml import bs4 title = '' date = '' text = '' top = [] link = [] web_link = 'https://timesofindia.indiatimes.com/{}/' web_link = web_link.format('india') req = requests.get(web_link) soup = bs4.Beau

我正在写一个网页垃圾代码,我得到了上面的错误

import requests
import lxml
import bs4

title = ''
date = ''
text = ''
top = []
link = []  


web_link = 'https://timesofindia.indiatimes.com/{}/'
web_link = web_link.format('india')
req = requests.get(web_link)
soup = bs4.BeautifulSoup(req.text, 'lxml')
topi = soup.find('div', {'class':'main-content'})
topi = topi.find_all('span', {'class':'w_tle'})
for i in range(len(topi)):
   top = topi[i].find('a').get('href')
   link.append('https://timesofindia.indiatimes.com' + top)
for i in range(len(link)):
   rq = requests.get(link[i])
   sp = bs4.BeautifulSoup(rq.text, 'lxml')
   title = sp.find('div', {'class':'_2NFXP'})
   title = title.find('h1',{'class':'_23498'})
回溯:

Traceback (most recent call last):
  File "C:\Users\xxx\xxx\py\so65702068.py", line 26, in <module>
    title=title.find('h1',{'class':'_23498'})
AttributeError: 'NoneType' object has no attribute 'find'
回溯(最近一次呼叫最后一次):
文件“C:\Users\xxx\xxx\py\so65702068.py”,第26行,在
title=title.find('h1',{'class':''u23498'})
AttributeError:“非类型”对象没有属性“查找”

我不熟悉网络抓取,我不明白它为什么会显示此错误。

您应该尝试自己从错误中学习。Python错误还指定错误的位置(行)

不管怎样,你的最后一行导致了这个问题。您基本上在另一个
sp.find()
函数上应用了
sp.find()
函数。
由于
sp.find('div',{'class':'u 2NFXP'})返回
None
,它证明了错误的正确性。

看起来像是previos指令-
title=sp.find('div',{'class':'u 2NFXP'}
-失败,所以执行
title=title.find('h1',{'class':'u 2nfxpx'})时
title
None
。顺便说一句,请同时发布错误信息/回溯-我在这里为您做了这些。谢谢您的帮助。非常感谢!事实上,我是新来的,所以这就是我遇到问题的原因。我很高兴我能帮上忙。如果您想最大限度地提高下一次的学习效率,Python的错误指导对于初学者来说是非常有帮助和容易理解的。祝你好运好的,当然可以。我会提高自己。