Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.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 BeautifulSoup初始化类型错误--故障排除_Python_Python 3.x_Pandas_Beautifulsoup - Fatal编程技术网

Python BeautifulSoup初始化类型错误--故障排除

Python BeautifulSoup初始化类型错误--故障排除,python,python-3.x,pandas,beautifulsoup,Python,Python 3.x,Pandas,Beautifulsoup,错误指向这一点 我使用的第三方模块依赖于BeautifulSoup。我用它来分别创建NBA球员的数据框,然后将它们合并成一个大数据框。下面代码中的列表comp适用于一些DFs,但随后会出现错误,错误为TypeError:type'NoneType'的对象没有len() 相关代码: import pandas as pd from PandasBasketball.stats import player_stats dfs = [player_stats(requests.get(url), &

错误指向这一点

我使用的第三方模块依赖于BeautifulSoup。我用它来分别创建NBA球员的数据框,然后将它们合并成一个大数据框。下面代码中的列表comp适用于一些DFs,但随后会出现错误,错误为
TypeError:type'NoneType'的对象没有len()

相关代码:

import pandas as pd
from PandasBasketball.stats import player_stats

dfs = [player_stats(requests.get(url), "per_minute") for url in full_player_urls[600:]]
all_stats = pd.concat(dfs)
all_stats[::500]
我尝试过的事情:

  • 检查是否正确生成
    full\u player\u URL
    。它是。它是一个URL列表,如:
    http://www.basketball-reference.com/players/b/burrobo01.html
  • 验证了
    player\u stats()
    对于URL是否正常工作:
    player_stats(requests.get()http://www.basketball-reference.com/players/b/bustida01.html“),”每分钟“
    上面正确地生成了从该网页上的表生成的数据帧。这是工作的预期

我的猜测是站点服务器意识到您在短时间内发出了许多请求,并且在循环的某个点上阻止了您。你可以做几件事。最简单的方法是在每次迭代后放置一点时间延迟。如果这不起作用,请告诉我,我们可以稍微解决一下:

import pandas as pd
from PandasBasketball.stats import player_stats
import time
import random
import requests

dfs = []
for url in full_player_urls[600:]:     
    dfs.append(player_stats(requests.get(url), "per_minute"))
    x = random.uniform(0, 10) 
    time.sleep(x)
       
all_stats = pd.concat(dfs)
all_stats[::500]

尝试调用
.content
方法<代码>请求.get(url).content@MendelG-TY以获取响应。返回
AttributeError:“str”对象没有属性“text”
请尝试设置url“”。当我调试代码时,它找不到返回bs4对象的表。我认为某些url不包含tables元素,因此标记参数为None。@SamDillard,给我发封电子邮件,我会帮你的。杰森。schvach@gmail.com. 我们必须进行一些调试,以确定错误出现的时间点。