为了账号安全,请及时绑定邮箱和手机立即绑定

Python开发简单爬虫

蚂蚁帅帅 全栈工程师
难度初级
时长 1小时14分
学习人数
综合评分9.67
646人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰

最新回答 / 小楠仔子
你说的js页面应该是指动态加载数据的js方法,而这些js调用方法一般会调用特定的API返回json数据,所以直接访问api然后解析返回的json数据是一种解决方案。我也是初学,有不对的地方见谅。

已采纳回答 / blacksea3
刚看到一个最近的相似的问题-_-||有可能你的try-except中间的print 'craw %d : %s' %(count, new_url)到except那一块某个地方使用的代码打错了而不是self.urls.has_new_url()==0导致的错误,python的百科里面是有别的链接的,你可以试着把try-except去掉,让错误直接显示出来中间这一块指的是:html_cont=self.downloader.download(new_url)new_urls,new_data=self.pa...
类那一块要是学的不熟练的话,而且还不了解老师所用的那款编码器,这节课基本就是鸭子听雷
网页解析器下载网址:
http://www.crummy.com/software/BeautifulSoup/
不错,通俗易懂,python大法好!
相当清晰的思路,这个老师讲的真好~
自动获取网页内容

已采纳回答 / 蚂蚁帅帅
SpiderMain中的urls是在__init__构造函数中初始化的,看下这个函数里面有self.urls变量的初始化吗?
66666666666666666666666666666666666666
6666666666666666666666666
python3的同学,如果出现只显示一行就报错,可能是因为import urllib没有写全,应该写成import urllib.request,具体原因的话不清楚。
老师讲得好

已采纳回答 / 蚂蚁帅帅
赞思考,改成多线程,要多一些处理:1、设定线程数目为N2、改用multiprocessing.Process方法启动crawl方法N次,每个线程记录序号为N;3、修改UrlManger,获取url的时候,需要提供序号参数,只返回hash(url)%N==0的url,或者干脆维护N个队列,每个线程单独使用自己的URL队列即可;难点在于处理UrlManager和Outputer的多线程冲突,如果数据是存到MySQL,要么使用上面说的线程隔离的方法,要么使用DB加锁的方式处理冲突;
课程须知
本课程是Python语言开发的高级课程 1、Python编程语法; 2、HTML语言基础知识; 3、正则表达式基础知识;
老师告诉你能学到什么?
1、爬虫技术的含义和存在价值 2、爬虫技术架构 3、组成爬虫的关键模块:URL管理器、HTML下载器和HTML解析器 4、实战抓取百度百科1000个词条页面数据的抓取策略设定、实战代码编写、爬虫实例运行 5、一套极简的可扩展爬虫代码,修改本代码,你就能抓取任何互联网网页!

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消