Python爬取中国大学排名网站时,如何解决TypeError: NoneType格式化错误?

2026-04-28 07:220阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计879个文字,预计阅读时间需要4分钟。

Python爬取中国大学排名网站时,如何解决TypeError: NoneType格式化错误?

原文内容过长,以下为简化版:

原文链接:[http://gaokao.xdf.cn/201911/10991728.](http://gaokao.xdf.cn/201911/10991728.)

问题分析:错误为类型错误,显示我们传递了不支持格式的字符串。

1.1 strip():查看网页源码,发现我们传递的字符串格式不支持。

​ 本文使用的是如下网址:

gaokao.xdf.cn/201911/10991728.html

1 问题分析与解决

报错为类型错误,显示我们传递了不支持的格式字符串

1.1 strip()

我们查看网页源码,发现我们所传递的字符串头尾包含空格及换行(红色方框),但是这不是报错的原因,这只会导致格式不太好看,因此我在获取字符串是添加了.strip()函数,既tds[0].text.strip()。 strip()函数可去除头尾的指定字符,默认为空格及换行。

1.2 string与text

r.text                           #响应内容的字符串形式,即url对应页面的内容 r.string                        #标签内非属性字符串,<>...<>中字符串,格式:<tag>.string

通过对比我们可以发现r.string获取的是标签内非属性字符串,而我们查看源代码可以发现大学名字不是td标签的字符串,属于td儿子的儿子的儿子……的字符串,因此tds[0].string只能获取到None。

阅读全文

本文共计879个文字,预计阅读时间需要4分钟。

Python爬取中国大学排名网站时,如何解决TypeError: NoneType格式化错误?

原文内容过长,以下为简化版:

原文链接:[http://gaokao.xdf.cn/201911/10991728.](http://gaokao.xdf.cn/201911/10991728.)

问题分析:错误为类型错误,显示我们传递了不支持格式的字符串。

1.1 strip():查看网页源码,发现我们传递的字符串格式不支持。

​ 本文使用的是如下网址:

gaokao.xdf.cn/201911/10991728.html

1 问题分析与解决

报错为类型错误,显示我们传递了不支持的格式字符串

1.1 strip()

我们查看网页源码,发现我们所传递的字符串头尾包含空格及换行(红色方框),但是这不是报错的原因,这只会导致格式不太好看,因此我在获取字符串是添加了.strip()函数,既tds[0].text.strip()。 strip()函数可去除头尾的指定字符,默认为空格及换行。

1.2 string与text

r.text                           #响应内容的字符串形式,即url对应页面的内容 r.string                        #标签内非属性字符串,<>...<>中字符串,格式:<tag>.string

通过对比我们可以发现r.string获取的是标签内非属性字符串,而我们查看源代码可以发现大学名字不是td标签的字符串,属于td儿子的儿子的儿子……的字符串,因此tds[0].string只能获取到None。

阅读全文