美文网首页pythonPython
【基础】学习笔记62-Python3爬取与分析网页中的数据

【基础】学习笔记62-Python3爬取与分析网页中的数据

作者: Alyna_C | 来源:发表于2021-01-11 06:56 被阅读0次

    简介

    爬取网页——标准库urllib3、第三方库requests

    分析网页——正则表达式库re、第三方库beautifulsoup4

    问题

    问题:print(html.decode("utf-8"))出错,错误如下:

    UnicodeDecodeError: 'utf-8' codec can'tdecode bytes in position 358-359: unexpected end of data

    解决:修改字符集参数,一般这种情况较多出现在国标码(GBK)和utf-8之间选择出现了问题。

    出现异常报错,是由于设置decode()方法的第二个参数(errors)为严格(strict)形式造成的。该参数默认为strict,将其更改为ignore即可。

    print(html.decode("utf-8","ignore"))

    <备注:必须确定网页是使用utf-8编码>

    问题:如何查看网页采用的编码方式

    解答:<常规方法>

    打开网页,打开开发者工具(可直接按F12调出)

    à在窗口‘console’标签下,输入‘document.charset’,即可查到网页编码

    问题:ModuleNotFoundError: No module named 'urllib.request'; 'urllib' is

    not a package的问题,即urllib包无效

    解决:问题产生的原因有两种——1.正在import urllib的文件命名就是urllib.py;2. 正在使用的文件的文件夹目录下有一个叫urllib.py的文件。

           更改.py文件名即可

    强调:不能给py文件命名为urllib,会导致urllib导入出错

    应用举例

    #获取“辽宁本科教学网”的通知公告

    步骤:爬取网页requests-解析网页BeatifulSoup-从网页内容中爬取有效信息soup.find-打印出结果

    相关文章

      网友评论

        本文标题:【基础】学习笔记62-Python3爬取与分析网页中的数据

        本文链接:https://www.haomeiwen.com/subject/ewtmoktx.html