爬虫实战遇到的问题及解决汇总 / 爬虫原理介绍

一、如何写一个完整的爬虫程序?

基本流程

在这里插入图片描述
(图源以及参考:python爬虫系列 https://www.jianshu.com/p/4424c7f36143)

爬虫的流程:请求网页 - 解析网页 - 提取网页数据 - 保存数据
(1)请求网页
(2)解析网页、提取数据的组合:bs4 + lxml 或者 lxml+xpath等
(3)保存数据

常用库介绍

二、实战中常见错误类型及解决

0、urllib 与 requests的区别

在模拟发起网络请求这一步中,主要用到的库有requests库和python内置的urllib库,一般建议使用requests,它是对urllib的再次封装,它们使用的主要区别:
requests可以直接构建常用的get和post请求并发起,urllib一般要先构建get或者post请求,然后再发起请求。
(urllib是内置的直接用,requests是第三方库要下载安装)

1、urllib库在python2与python3的用法区别

在python3.3后urllib2已经不能再用,只能用urllib.request来代替,其他变化点击这里

urllib四大组成模块:
(1)urllib.request——请求模块
(2)urllib.parse——url解析模块
(3)urllib.robotparser——robot.txt解析模块
(4)urllib.error——异常处理模块

2、Instance of ‘URLError’ has no ‘code’ member

解决:把URLError换成HTTPError
https://blog.csdn.net/weixin_41544534/article/details/86684857

3、Unexpected indent

解决:一般为缩进错误,python严格到只认一个tab或者四个空格

4、SyntaxError: invalid syntax

解决:
1、符号使用不正确,如半个括号(这个可能错误并不在标志行,前后找找对称括号);使用了中文符号;忘在if、elif、else、for、while、class、def声明末尾添加分号“:”
2、使用 “=”而不是 “==”
3、错误的使用缩进量。
记住缩进增加只用在以:结束的语句之后,而之后必须恢复到之前的缩进格式。

5、UnboundLoca
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值