AttributeError: 'NoneType' object has no attribute 'children'

问题遇到的现象和发生背景

Pycharm 社区版本,爬虫学习

问题相关代码,请勿粘贴截图

import requests
from bs4 import BeautifulSoup
url = 'https://www.tupianzj.com/mingxingku/neidinv/list_229_1.html'
r = requests.get(url=url)
code = r.status_code
print(code)
text = r.text

soup = BeautifulSoup(text,'html.parser')

ul = soup.find('div',class_='list_con_mxbox_ul')
print(ul)
li_list = ul.children

运行结果及报错内容

Print(200)状态码返回是200,显示返回正常,但是Print(ul)显示为none,并报错为AttributeError: 'NoneType' object has no attribute 'children'。

我的解答思路和尝试过的方法

百度搜索报错提示,未找到解决办法。

我想要达到的结果

消除报错

不需要任何修改,直接复制代码使用

img

# -*- coding: UTF-8 -*-
"""
@作   者:陆地起飞全靠浪
"""
import requests
from bs4 import BeautifulSoup

requests_headers = """
:authority: www.tupianzj.com
:method: GET
:path: /mingxingku/neidinv/list_229_1.html
:scheme: https
accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
accept-encoding: gzip, deflate, br
accept-language: zh-CN,zh;q=0.9
cache-control: max-age=0
cookie: cookiecookiecookiecookiecookiecookiecookie
if-modified-since: Fri, 25 Feb 2022 17:32:19 GMT
if-none-match: W/"621912a3-91ee"
referer: https://www.tupianzj.com/mingxingku/neidinv/list_229_1.html
sec-fetch-dest: document
sec-fetch-mode: navigate
sec-fetch-site: same-origin
sec-fetch-user: ?1
upgrade-insecure-requests: 1
user-agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
"""
params = {}
for x in requests_headers.split('\n'):
    x = x.strip()
    if x == '':
        continue
    k, v = x.split(': ')
    params[k]=v

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'
}
url = 'https://www.tupianzj.com/mingxingku/neidinv/list_229_1.html'

r = requests.get(url=url, params=params, headers=headers)
r.encoding = 'UTF-8'
code = r.status_code
print(code)
text = r.text

soup = BeautifulSoup(text, 'html.parser')

ul = soup.find('ul', class_='list_con_mxbox_ul')
div = soup.find('div', class_='list_con_box')
print(ul)
li_list = ul.children
div_list = div.children

soup.find('div',class_='list_con_mxbox_ul')的返回值是none
说明div里没找到名叫list_con_mxbox_ul的class呗

soup.find('div',class_='list_con_mxbox_ul')
你打印看下r.text返回的数据里面有div标签吗

节点定位错了,网页没有这个class节点吧

img

img