python BeautifulSoup 爬虫运行出现 exited with code -1073741571
首先,exited with code -1073741571意思是栈溢出。具体可以看https://blog.csdn.net/vblittleboy/article/details/6613815
它的前一个错误是程序递归深度过深。
但我没有在函数里用递归?
python认为你进入一个函数就进入更深一层的递归。
import sys#出现递归深度太深的问题?
sys.setrecursionlimit(100000000)#把递归深度设深点。
可以解决,
但又出现栈溢出。在隔行输出调试法下我发现是<class 'bs4.element.Tag'>类型强制转换str处退出的程序。也就是说,它导致了栈溢出。
soup = BeautifulSoup(html, 'html.parser')
pbiaoqian = soup.find('p')
print(str(pbiaoqian))#有问题?
在这个错误之前,有一个问题,就是一个htm页面有很多<p>标签,但BeautifulSoup只要找一个就全在里面了。
之前用
for pbiaoqian in soup.find_all('p'):
#prind(pbiaoqian.get_text())#调用方法
#print(str(pbiaoqian))#或者直接转换打印
print(pbiaoqian)#这样也能显示
它输出的结果是find到的第一个<p>标签,从头输出到尾。第二个输出,find到的第二个<p>标签开始,到尾。......最后一个<p>标签。
言归正传。
我推测,栈溢出是因为调用强制类型转换程序次数过多导致的,或者pbiaoqian里内容过多类型转换处理不了。
那么,解决方法就是:
1.报什么错从哪里解决。
但windows修改栈空间大小要在编译器里修改,因为它是由编译器自动管理的。但F:\PyCharm Community Edition 2018.2.4\bin\pycharm.exe.vmoptions里尽是看不懂的参数,前2个好像还是系统给编译器分配的内存设置。
File->settings瞎点了半天,也没有找到Stack有关的单词。
2.让str的强制类型转换能一次转更多。
如果能像设置递归深度一样设置栈空间大小就好了,
threading.stack_size(200000000)
不过用起来好像没什么效果,还是老样子。
3.或者让BeautifulSoup一次不find那么多,或者把find到的拆分成许多块。
str拆分还能百度到方法,BeautifulSoup文档里给它4个变量的介绍少得可怜,也没有百度到。
思考一天未果。
也许你有同样困扰,也许你能给我答案,可以在下面评论。
python BeautifulSoup 爬虫运行出现 exited with code -1073741571的更多相关文章
- python beautifulsoup爬虫
爬虫这个听起来很 hack 的名字,是我学习 python 的诱因.当 python 基础学习到一定程度(基本语法,数据类型掌握) 就可以开启自己的小爬虫了.毕竟实践才是提高的最快途径.废话说完了,下 ...
- python beautifulsoup爬虫学习
BeautifulSoup(page_html, "lxml").select(),这里可以通过浏览器开发者模式选择copy selector,并且并不需要完整路径. github ...
- 利用Python网络爬虫采集天气网的实时信息—BeautifulSoup选择器
相信小伙伴们都知道今冬以来范围最广.持续时间最长.影响最重的一场低温雨雪冰冻天气过程正在进行中.预计,今天安徽.江苏.浙江.湖北.湖南等地有暴雪,局地大暴雪,新增积雪深度4-8厘米,局地可达10-20 ...
- Python开发爬虫之BeautifulSoup解析网页篇:爬取安居客网站上北京二手房数据
目标:爬取安居客网站上前10页北京二手房的数据,包括二手房源的名称.价格.几室几厅.大小.建造年份.联系人.地址.标签等. 网址为:https://beijing.anjuke.com/sale/ B ...
- 第三百五十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—chrome谷歌浏览器无界面运行、scrapy-splash、splinter
第三百五十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—chrome谷歌浏览器无界面运行.scrapy-splash. splinter 1.chrome谷歌浏览器无界面运行 chrome ...
- python网络爬虫之解析网页的BeautifulSoup(爬取电影图片)[三]
目录 前言 一.BeautifulSoup的基本语法 二.爬取网页图片 扩展学习 后记 前言 本章同样是解析一个网页的结构信息 在上章内容中(python网络爬虫之解析网页的正则表达式(爬取4k动漫图 ...
- Python 实用爬虫-04-使用 BeautifulSoup 去水印下载 CSDN 博客图片
Python 实用爬虫-04-使用 BeautifulSoup 去水印下载 CSDN 博客图片 其实没太大用,就是方便一些,因为现在各个平台之间的图片都不能共享,比如说在 CSDN 不能用简书的图片, ...
- Python 网页爬虫 & 文本处理 & 科学计算 & 机器学习 & 数据挖掘兵器谱(转)
原文:http://www.52nlp.cn/python-网页爬虫-文本处理-科学计算-机器学习-数据挖掘 曾经因为NLTK的缘故开始学习Python,之后渐渐成为我工作中的第一辅助脚本语言,虽然开 ...
- Python开发爬虫之静态网页抓取篇:爬取“豆瓣电影 Top 250”电影数据
所谓静态页面是指纯粹的HTML格式的页面,这样的页面在浏览器中展示的内容都在HTML源码中. 目标:爬取豆瓣电影TOP250的所有电影名称,网址为:https://movie.douban.com/t ...
随机推荐
- DEBUG的基本命令的使用[MASM]
DEBUG的基本命令的使用 DEBUG是专门为汇编语言设计的一种调试工具,它通过步进,设置断点等方式为汇编语言程序员提供了非常有效的调试手段. DEBUG的命令都是一个字母,后跟一个或多个参数:字母 ...
- js中scroll滚动相关
js中scroll滚动相关 scroll,滚动,一般讨论的是网页整体与浏览器之间的关系. 一.元素相关 属性/方法 解释 element.scrollHeight 返回元素的整体高度. element ...
- JMeter命令行执行+生成HTML报告
1.为什么用命令行模式 使用GUI方式启动jmeter,运行线程较多的测试时,会造成内存和CPU的大量消耗,导致客户机卡死: 所以一般采用的方式是在GUI模式下调整测试脚本,再用命令行模式执行: 命令 ...
- System.InvalidOperationException:This.NpgsqlTransaction has completed;it is no longer usable. at Npgsql.NpgsqlTransaction.CheckCompleted() in ...
关于报此异常,原因是事务不能循环提交,一个方法中事务只能提交一次. System.InvalidOperationException:This.NpgsqlTransaction has comple ...
- Django注意知识点(二)
Tinymce富文本 前台和后台的使用 一,后台 Admin 1. 于 settings.py 文件中修改 INSTALLED_APPS 2. 于 settings.py 文件中增添如下配置 # 富文 ...
- (入门SpringBoot)SpringBoot加接口操作日志好方法(九)
用Spring的切面去做,慕课网上的大神的小妙招,被我拷贝下来了.import org.aspectj.lang.JoinPoint; import org.aspectj.lang.annotati ...
- linux驱动——cmdline原理及利用【转】
转自:https://blog.csdn.net/qingzhuyuxian/article/details/82895416 最近安卓项目中想要获取内核cmdline特定的启动参数,因为我们在他的U ...
- CodeForces - 1230E(dfs+数论+树上贡献)
题意 https://vjudge.net/problem/CodeForces-1230E 给出一棵树, 点上有权值, 对于每个点, 求它和所有后代节点的GCD的和. 思路 对于一个点,他对后代的贡 ...
- 0. gitlab 一些常用知识
Monitor 但是有反映 提交慢的情况时候. 可以查看一下队列 使用root账号 gitlab最多可以同时25个队列. 多了需要排队. 可以查看一下原因.
- HashMap默认加载因子为什么选择0.75?(阿里)
Hashtable 初始容量是11 ,扩容 方式为2N+1; HashMap 初始容量是16,扩容方式为2N; 阿里的人突然问我为啥扩容因子是0.75,回来总结了一下: 提高空间利用率和 减少查询成本 ...