记一次排错的过程

解析某网站的内容,用requests库获得html内容后,用BeautifulSoup来解析内容
其中有个标签大概这样,

代码流程大概这样

cookie = 'xxxxx'
r = requests.get(url, cookies = cookies)
    

    page = BeautifulSoup(r.text)
    page.find('div',class_ ='gh-ji')
    

结果始终说方法find()返回的是None,此前在类似的问题上坑过,有点印象但记不太清楚,这个class属性中间有空格,不能像正常时候一样写成class="ab-ef gh-ij"
这次我以为又写错了,百度、看网页源标签、看代码中间的-是否写错、甚至双引号换成单引号、看BeautifulSoup官网find()方法的介绍、等等,各种方法一通尝试,前后折腾一个多小时,精疲力尽银镜疼
最后快要放弃时,把r print出来看,根本没有获取到html内容,原来是cookie从浏览器上复制时复制错了

事情不大,代码简单,虽然最后也解决了,但还是很有必要总结下,结合以前的一些经验如下
1 在xx地方报错,xx地方当然要检查,但xx地方用到数据的来龙去脉都要检查,xx附近的代码(前面的和后面)都要检查
2 代码要写准确,多或少一个空格都不行

3 自己想到的方法都没有效果的话,就不要再去一个劲地和自己斗气了,我就容易犯这个毛病,暂时丢开,出去转一圈,放松心情,说不定在路上或者睡觉,起来后在检查几下就想到新的思路了,或者有问题的代码前后拍个照没事看看打发时间也是个办法
当时把能想到的方法都用过,仍不能解决,很可能已经走到死胡同了,不要斗气,放开自己,退一步海阔天空

posted @   工作手记  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示