怎样分析网贷数据交易平台平台数据

10月份江苏P2P网贷大数据分析报告
  中国经济网深圳11月5日讯 第一网贷(深圳钱诚)发布的《2015年10月份江苏P2P网贷行业报告》显示,10月份江苏P2P网贷成交额39.11亿元,全国排名第五;利率12.57%,全国排名第九;期限7.98个月,全国排名第三。  一、成交额,环比减少  第一网贷报告显示,10月份,江苏P2P网贷成交额36.95亿元,从多到少排名,全国第五,环比减少5.53%;同比增加135.43%。月江苏P2P网贷成交额249.34亿元,同比增加100.54%。  10月份江苏P2P网贷普通标、净值标、秒标分别为35.86亿元、1.05亿元、0.04亿元,分别占总成交额的97.04%、2.85%和0.12%,秒标大幅下降、净值标有所上升。  10月份江苏P2P网贷法定工作日,成交额28.56亿元,占全月总成交额77.28%;法定节假日、双休日,成交额8.4亿元,占全月总成交额22.72%。  10月份纳入中国P2P网贷指数样本平台中,江苏的22.89%的平台成交额在100万元以内;45.78%的平台成交额在100万至1000万元以内;22.89%的平台成交额在1000万至1亿以内;8.43%的平台成交额超过1亿元。  10月份江苏平台成效额前三名的平台是:苏宁理财、开鑫贷、365易贷。  江苏P2P网贷平台总成交额在全国排名第五位,占全国总成交额的1.48%。  二、利率,全国排名第九  第一网贷报告显示,2015年10月份,江苏P2P网贷平均综合年利率12.57%,从低到高排名,全国第九位;环比下降0.09个百分点,同比下降8.45个百分点。月江苏P2P网贷利率14.21%,同比降低8.61个百分点。  10月份江苏P2P网贷平均综合年利率12.57%,剔除了秒标(娱乐标),包括了借款标的各种奖励。  10月份江苏P2P网贷平均综合年利率:普通标12.54%,较上月份12.61%,下降0.07个百分点;较去年同期21.03%,下降8.49个百分点。净值标13.44%,较上月份14.48%,下降1.04个百分点;较去年同期8.94%,上升4.5个百分点。  10月份江苏P2P网贷平均综合年利率:法定工作日12.00%、节假日和双休日14.49%。环比分别降低0.14个百分点、0.82个百分点。  江苏省10月份全国P2P网贷平台平均综合年利率最低前三名平台分别是:苏富贷、德成贷、苏宁理财。  10月份纳入中国P2P网贷指数样本平台中,江苏16.87%的平台,平均综合年利率在10%以下;50.6%的平台,平均综合年利率在10%与18%间;12.05%的平台,平均综合年利率在18%与24%之间;20.48%的平台,平均综合年利率在24%以上。必要指出的是,10月份江苏有4.82%的P2P网贷平台利率超过36%。  10月份江苏P2P网贷总成交额的56.16%,年利率在10%以内;29.13%,年利率10%至18%;5.5%,年利率18%至24%;9.21%,年利率24%以上。  三、期限,全国排名第三  第一网贷报告显示,10月份,江苏P2P网贷平均期限为7.98个月,从长到短排名,全国第三;环比延长13.23%,同比延长88.99%。江苏P2P网贷期限最长的三个平台是:紫枫信贷、紫金所、民生创投。月江苏P2P网贷平均期限6.15个月,同比延长63.04%。  10月份江苏P2P网贷16.57%的成交额,平均借贷期限在1个月以内;13.72%的成交额,1至3个月;11.17%的成交额,3至6个月;25.56%的成交额,6至12个月的;32.99%的成交额,1年以上。  四、平台创历史新高  第一网贷报告显示,截止2015年10月底,纳入中国P2P网贷指数统计的P2P网贷平台,江苏为138家,占全国4.27%,全国排名第五。  五、问题平台率略有下降  P2P网贷行业,2013年以来江苏已经发生各种问题平台66家,占全国5.58%,全国排名第五。截止2015年10月底,江苏省问题平台率33.5%,环比降低1.79个百分点。
责任编辑:psq
禁止发表不文明、攻击性、及法律禁止言语
请发表您的意见(游客无法发送评论,请
还可以输入 140 个字符
热门评论网友评论只代表同花顺网友的个人观点,不代表同花顺金融服务网观点。
以下为热门自选股
代码|股票名称
同花顺财经官方微信号
手机同花顺财经
专业炒股利器
同花顺爱基金上海网贷平台数据分析 淘汰率达56%
作者: 网贷天眼来源: 网贷天眼 10:30:10
一、概述1、区域概况据网贷天眼研究院不完全统计,2016年7月份上海地区平台成交额为342亿,环比下降6.30%,同比上升267.74%,约占全国成交额的22.06%,占比相比上月有所下降,贷款余额为1111.85亿,环比上涨3.31%。累计平台数量达392家,7月新增平台3家,新增问题平台22家,累计问题平台220家,在运营平台数量172家。图1全国平台主要地域分布2、成交额从上图可以看出,上海地区7月份成交额相比6月下降明显,成交额跌破350亿,环比下降6.30%,同比上升267.74%, 虽然7月成交额呈下降趋势,但不影响上海未来网贷行业的发展。图2上海地区每月成交额(单位:亿元)3、新增平台进入2016年以来,上海地区每月新增平台数量均不超过5家,对比2015年,这段时间平台增长速度较快,行业发展迅速。7月新增平台3家,占比当月全国新增平台总数的21.43%。图3上海地区每月新增平台4、利率&期限据网贷天眼研究院不完全统计,目前上海地区平台的平均借款综合利率约为10.14%,相比上月略微下降,低于全国平均水平。平均借款期限为14.43个月,高于行业平均水平。5、问题平台上海地区累计问题平台达220家,占全国所有问题平台10.45%,相比2016年7月占比略微上升。其中7月份新增问题平台22家,占本月新增问题平台总数的20%。7月上海部分新增问题平台名单:二、重点监测平台(6.7)1、成交额图4 6月&7月重点监测平台成交额对比(单位:亿元)上海地区7月份重点监测平台总的成交额相比6月份小幅提高,环比上升9.79%,其中陆金所7月成交额环比增长11.43%,对总体变化趋势影响较大。在监测的8家平台中,3家平台成交额下降,分别为你我贷、诺诺镑客和钜宝盆,此外,余下的5家平台中,拍拍贷环比上升26.38%。2、平均利率图5 6月&7月重点监测平台的平均利率对比2016年7月份上海重点监测平台的平均综合利率相比6月份有所上升。在抽取的8家重点监测平台中,仅有一家平台微弱下降,其余7家平台利率均有不同程度的上涨,其中温州贷的利率增加最多,环比增加了9.61%,其次是钜宝盆上涨7.43%,其余平台涨幅均不超过2%。3、平均借款期限图6 6月&7月重点监测平台平均借款期限对比(单位:月)上海地区重点监测平台之间的平均借款期限有明显的差距,有四家平台的平均借款期限超过15个月,分别是钜宝盆、你我贷、诺诺镑客和陆金所,余下四家平台则不足10个月。从单个平台来看,温州贷7月平均借款期限是6月的二倍,钜宝盆期限下降的幅度较为明显。4、借款人&投资人图7 6月&7月重点监测平台借款人(单位:人)上海地区8家重点监测平台借款人数整体表现为上升趋势,环比上升21.20%。拍拍贷借款人数最多位列第一,环比增长18.79%,陆金所与拍拍贷7月借款人数基本持平,环比增长29.83%,诺诺镑客人数超过60000人,位列第三名。整体看,监测平台中,共5家平台借款人数上升,其余3家平台借款人数下降,但下降幅度较小。图8 6月&7月重点监测平台投资人数(单位:人)上海地区8家重点监测平台中,陆金所投资人数依旧增长幅度较大,环比上涨23.83%,其次是拍拍贷,投资人数即将突破80000人,两家平台对上海地区总投资人数量影响较大,诺诺镑客和你我贷的7月份投资人数虽然有所下降,但远高于第五名温州贷,剩余3家平台投资人数均不足1000人。5、贷款余额图9 6月&7月重点监测平台贷款余额(单位:亿元)7月份,上海地区重点监测平台贷款余额相比6月,总体呈现上升的趋势,环比增长6.74%。从具体平台来看,8家平台中只有拍拍贷贷款余额呈下降趋势,其余平台全部上升,其中,陆金所贷款余额最高,环比增加7.65%,温州贷增长幅度最大,环比增加15.76%。三、2016年7月趋势总结2016年7月份上海地区平台成交额为342亿,环比下降6.30%,约占全国成交额的22.06%,贷款余额为1111.85亿,累计平台数量达392家,7月新增平台3家,新增问题平台22家,在运营平台数量172家。此外,综合借款利率为10.14%,平均借款期限为14.43个月。重点监测平台方面,上海地区7月重点监测平台总成交额相比上月有所上升,环比上升9.79%,其中陆金所的投资人数和贷款余额都位列首位,拍拍贷借款人数首次冲击第一,环比增加18.79%。根据时事新闻得知,上海地区网贷行业正在进入全面整治阶段,虽然导致成交额的短暂下降,但预计未来成交额等一系列指标均会有所提高。
打开微信“扫一扫”,分享给朋友和朋友圈
电商数据频道
电商服务推荐数据分析系列篇:网贷P2P数据剖析a year ago赞赏还没有人赞赏,快来当第一个赞赏的人吧!16收藏分享举报文章被以下专栏收录聊聊技术,包括分布式数据库该怎么玩,机器学习平台…{&debug&:false,&apiRoot&:&&,&paySDK&:&https:\u002F\u002Fpay.zhihu.com\u002Fapi\u002Fjs&,&wechatConfigAPI&:&\u002Fapi\u002Fwechat\u002Fjssdkconfig&,&name&:&production&,&instance&:&column&,&tokens&:{&X-XSRF-TOKEN&:null,&X-UDID&:null,&Authorization&:&oauth c3cef7c66aa9e6a1e3160e20&}}{&database&:{&Post&:{&&:{&isPending&:false,&contributes&:[{&sourceColumn&:{&lastUpdated&:,&description&:&聊聊技术,包括分布式数据库该怎么玩,机器学习平台该怎么搭建,算法该怎么学习和应用;\n聊聊业务,包括电商领域,互联网零售,金融,医疗领域的数据分析和挖掘都有什么;\n聊聊职场,数据分析师,数据挖掘工程师该怎么在职场发展;\n聊聊事业,怎么在数据分析数据挖掘领域建立起自己的事业;\n聊聊人生和朋友,人生还有很多乐趣,还有很多朋友值得交往。&,&permission&:&COLUMN_PUBLIC&,&memberId&:7369597,&contributePermission&:&COLUMN_PUBLIC&,&translatedCommentPermission&:&all&,&canManage&:true,&intro&:&聊聊技术,包括分布式数据库该怎么玩,机器学习平台…&,&urlToken&:&dataman&,&id&:7272,&imagePath&:&c27b2f16ccd2bd961744cef12cc333c4.jpg&,&slug&:&dataman&,&applyReason&:&&,&name&:&数据分析侠&,&title&:&数据分析侠&,&url&:&https:\u002F\u002Fzhuanlan.zhihu.com\u002Fdataman&,&commentPermission&:&COLUMN_ALL_CAN_COMMENT&,&canPost&:true,&created&:,&state&:&COLUMN_NORMAL&,&followers&:17582,&avatar&:{&id&:&c27b2f16ccd2bd961744cef12cc333c4&,&template&:&https:\u002F\u002Fpic1.zhimg.com\u002F{id}_{size}.jpg&},&activateAuthorRequested&:false,&following&:false,&imageUrl&:&https:\u002F\u002Fpic1.zhimg.com\u002Fc27b2f16ccd2bd961744cef12cc333c4_l.jpg&,&articlesCount&:121},&state&:&accepted&,&targetPost&:{&titleImage&:&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-257b88e532d271f9d3bd7e15e35f6817_r.jpg&,&lastUpdated&:,&imagePath&:&v2-257b88e532d271f9d3bd7e15e35f6817.jpg&,&permission&:&ARTICLE_PUBLIC&,&topics&:[,1895],&summary&:&现在的知乎、天涯也都快变成炒房理财的论坛,各种信息充斥到每个角落,包括很多自媒体写的理财信息渠道等,大多都比较浅显简单,对于小白来说很适合普及一些常识。而对于资深的薅羊毛工作者还是更多需要自己的判断,结合第三方数据平台。因为有这些数据的帮…&,&copyPermission&:&ARTICLE_COPYABLE&,&translatedCommentPermission&:&all&,&likes&:0,&origAuthorId&:0,&publishedTime&:&T17:07:29+08:00&,&sourceUrl&:&&,&urlToken&:,&id&:2187128,&withContent&:false,&slug&:,&bigTitleImage&:false,&title&:&数据分析系列篇:网贷P2P数据剖析&,&url&:&\u002Fp\u002F&,&commentPermission&:&ARTICLE_ALL_CAN_COMMENT&,&snapshotUrl&:&&,&created&:,&comments&:0,&columnId&:7272,&content&:&&,&parentId&:0,&state&:&ARTICLE_PUBLISHED&,&imageUrl&:&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-257b88e532d271f9d3bd7e15e35f6817_r.jpg&,&author&:{&bio&:&前支付宝人\u002F私募投资理财,公众号@面包茶话会&,&isFollowing&:false,&hash&:&485fa57eef58c098b714cad9&,&uid&:88,&isOrg&:false,&slug&:&bigbread&,&isFollowed&:false,&description&:&微信(请备注公司 职业 名字):
\n《数据分析侠的成长故事》作者\n公众号:面包茶话会
bread2156\n《人人都会数据分析》(20万字书):https:\u002F\u002Fitem.taobao.com\u002Fitem.htm?spm=a1z09..0.5c8b01c8LfVD4b&id=&_u=359l9svc8fb&,&name&:&面包君&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fbigbread&,&avatar&:{&id&:&v2-56a621a4cf593767ade3f71a4e848780&,&template&:&https:\u002F\u002Fpic1.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},&memberId&:7369597,&excerptTitle&:&&,&voteType&:&ARTICLE_VOTE_CLEAR&},&id&:531684}],&title&:&数据分析系列篇:网贷P2P数据剖析&,&author&:&bigbread&,&content&:&\u003Cp\u003E现在的知乎、天涯也都快变成炒房理财的论坛,各种信息充斥到每个角落,包括很多自媒体写的理财信息渠道等,大多都比较浅显简单,对于小白来说很适合普及一些常识。而对于资深的薅羊毛工作者还是更多需要自己的判断,结合第三方数据平台。\u003C\u002Fp\u003E\u003Cp\u003E因为有这些数据的帮忙,对于个人来说,去年也差不多薅了一套房子的首付,所以研究的多总有回报。而这些数据本身也有很大的价值,包括我们有些部门的项目应该也是做这个方向,挖掘每个平台和用户的风险。\u003C\u002Fp\u003E\u003Cp\u003E网贷行业中的平台有许多,所以也有不少网贷门户平台通过某一种纬度去对网贷平台进行排序,如网贷之家、网贷天眼、网贷时空等等的平台。每一个网贷资讯平台的排名标准是有一定区别的,主要的纬度标准大约有以下几种:网贷平台成交量、平台借款人数、平台投资人数、平台项目种类、平台资质等等。\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E本人比较偏爱的就是76676,早期来说是看着一点点长大,原来主要就是搜集很多中小平台的信息渠道,毕竟像陆金所、招财宝这些家喻户晓的平台已经收益率太低了。而像现在已经有很多丰富的信息,包括平台、资金量、排名、活动、用户评价、行业资讯等等。\u003C\u002Fp\u003E\u003Cp\u003E链接:\u003Ca href=\&http:\u002F\u002Flink.zhihu.com\u002F?target=http%3A\u002F\u002Fwww.dailuopan.com\u002F\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E贷罗盘-专注网贷数据\u003C\u002Fa\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-380283bdd72d6a6fa0de1c60f4d1d5b7_b.jpg\& data-rawwidth=\&1236\& data-rawheight=\&544\& class=\&origin_image zh-lightbox-thumb\& width=\&1236\& data-original=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-380283bdd72d6a6fa0de1c60f4d1d5b7_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='1236'%20height='544'&&\u002Fsvg&\& data-rawwidth=\&1236\& data-rawheight=\&544\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&1236\& data-original=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-380283bdd72d6a6fa0de1c60f4d1d5b7_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-380283bdd72d6a6fa0de1c60f4d1d5b7_b.jpg\&\u003E\u003C\u002Ffigure\u003E另外还有2家辅助判断的数据有网贷之家和网贷天眼,相对哥来说,信息量可能少了点。\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&http:\u002F\u002Flink.zhihu.com\u002F?target=http%3A\u002F\u002Fwww.p2peye.com\u002Fshuju\u002F\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E【P2P网贷平台排行】P2P网贷数据_P2P数据分析_网贷数据查询-网贷天眼\u003C\u002Fa\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-fed7a42facd699c51fddc_b.jpg\& data-rawwidth=\&1219\& data-rawheight=\&640\& class=\&origin_image zh-lightbox-thumb\& width=\&1219\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-fed7a42facd699c51fddc_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='1219'%20height='640'&&\u002Fsvg&\& data-rawwidth=\&1219\& data-rawheight=\&640\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&1219\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-fed7a42facd699c51fddc_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-fed7a42facd699c51fddc_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Cp\u003E网贷天眼的排名数据则是是根据时间为纬度,展示出平台的成交额、综合利率、投资人数、平均借款周期、借款人数、满标速度和累计贷款余额等信息,主要的是根据相应时间段内平台成交额的数据进行排名。\u003C\u002Fp\u003E\u003Cp\u003E有的投资者会发现,自己投资的平台并不在排名表中,有2种原因,第一种就是平台尚未与网贷门户平台做数据对接,没有相关数据来源自然是没有办法进行数据比较的;第二种是做了数据对接,但是没有排名到前面去的。这种情况属于正常现象,并不是代表投资者选择的平台不好,只是没有那么好而已。\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&http:\u002F\u002Flink.zhihu.com\u002F?target=http%3A\u002F\u002Fshuju.wdzj.com\u002F\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E【p2p网贷平台排名】最新网贷平台排名_网络借贷平台排名_网络贷款平台排名-网贷之家\u003C\u002Fa\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-e68b5e82ff32cae9155fd_b.jpg\& data-rawwidth=\&1215\& data-rawheight=\&596\& class=\&origin_image zh-lightbox-thumb\& width=\&1215\& data-original=\&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-e68b5e82ff32cae9155fd_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='1215'%20height='596'&&\u002Fsvg&\& data-rawwidth=\&1215\& data-rawheight=\&596\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&1215\& data-original=\&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-e68b5e82ff32cae9155fd_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-e68b5e82ff32cae9155fd_b.jpg\&\u003E\u003C\u002Ffigure\u003E网贷之家的P2P网贷平台数据是根据平台的成交量、平台人气、项目的分散性和平台运营情况进行网贷平台排名的。这些数据的来源大多是网贷平台与网贷门户平台进行了数据的对接后获取到的数据。网贷之家提供的数据种类较多,虽然只是简单的排序功能,但是也能让投资者可以明白的看到各个平台的情况。\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E对于这些第三方平台的数据,如果有可能可以爬下来,做些对比分析,再程序化,相信也可以把“薅羊毛”实现自动化,精准化。。。\u003C\u002Fp\u003E\u003Cp\u003E最后写这篇的目的也是希望能够大家多交流交流,也是今年最后一篇。\u003C\u002Fp\u003E\u003Cp\u003EHappy New Year!\u003C\u002Fp\u003E\u003Cp\u003E——————————————————禁止转载——————————————————\u003C\u002Fp\u003E&,&updated&:new Date(&T09:07:29.000Z&),&canComment&:false,&commentPermission&:&anyone&,&commentCount&:13,&collapsedCount&:0,&likeCount&:16,&state&:&published&,&isLiked&:false,&slug&:&&,&lastestTipjarors&:[],&isTitleImageFullScreen&:false,&rating&:&none&,&titleImage&:&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-257b88e532d271f9d3bd7e15e35f6817_r.jpg&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&reviewers&:[],&topics&:[{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&数据分析&},{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&网贷P2P模式&},{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&理财&}],&adminClosedComment&:false,&titleImageSize&:{&width&:451,&height&:259},&href&:&\u002Fapi\u002Fposts\u002F&,&excerptTitle&:&&,&column&:{&slug&:&dataman&,&name&:&数据分析侠&},&tipjarState&:&activated&,&tipjarTagLine&:&真诚赞赏,手留余香&,&sourceUrl&:&&,&pageCommentsCount&:13,&tipjarorCount&:0,&annotationAction&:[],&hasPublishingDraft&:false,&snapshotUrl&:&&,&publishedTime&:&T17:07:29+08:00&,&url&:&\u002Fp\u002F&,&lastestLikers&:[{&bio&:&&,&isFollowing&:false,&hash&:&dbd41dcdfa8a1450d32cb&,&uid&:60,&isOrg&:false,&slug&:&xie-hong-yu-12&,&isFollowed&:false,&description&:&&,&name&:&叶红鱼&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fxie-hong-yu-12&,&avatar&:{&id&:&da8e974dc&,&template&:&https:\u002F\u002Fpic4.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:null,&isFollowing&:false,&hash&:&6b06e924a6f7dd494d61e3a2d340c60d&,&uid&:605900,&isOrg&:false,&slug&:&wang-yi-ming-2-74&,&isFollowed&:false,&description&:&&,&name&:&王怡明&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fwang-yi-ming-2-74&,&avatar&:{&id&:&e8439a08cefc06a0535966&,&template&:&https:\u002F\u002Fpic3.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&数据产品\u002F铲屎官\u002F想做厨子但是怂\u002F世界和平&,&isFollowing&:false,&hash&:&d56f48b10ff7dbcbc1cfe12&,&uid&:028500,&isOrg&:false,&slug&:&liu-fei-99-9-6&,&isFollowed&:false,&description&:&养了一只叫做狗的猫&,&name&:&云和66&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fliu-fei-99-9-6&,&avatar&:{&id&:&v2-3cf25cc4ba3d825c6cfc&,&template&:&https:\u002F\u002Fpic4.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&骂人&,&isFollowing&:false,&hash&:&dcb&,&uid&:671400,&isOrg&:false,&slug&:&xiao-shu-82-24&,&isFollowed&:false,&description&:&&,&name&:&小树&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fxiao-shu-82-24&,&avatar&:{&id&:&da8e974dc&,&template&:&https:\u002F\u002Fpic4.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&&,&isFollowing&:false,&hash&:&bcba8ecfbdd5efa2d7c9cd67d35120cb&,&uid&:60,&isOrg&:false,&slug&:&zhuang-jeremy&,&isFollowed&:false,&description&:&Ph.D. Student学过语言,干过会计,爱过优化,现在做可持续研究,想着IS。&,&name&:&Jeremy&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fzhuang-jeremy&,&avatar&:{&id&:&v2-ced829ba3c8f49dd4a0d677&,&template&:&https:\u002F\u002Fpic3.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false}],&summary&:&\u003Cimg src=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-fed7a42facd699c51fddc_200x112.jpg\& data-rawwidth=\&1219\& data-rawheight=\&640\& class=\&origin_image inline-img zh-lightbox-thumb\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-fed7a42facd699c51fddc_r.jpg\&\u003E现在的知乎、天涯也都快变成炒房理财的论坛,各种信息充斥到每个角落,包括很多自媒体写的理财信息渠道等,大多都比较浅显简单,对于小白来说很适合普及一些常识。而对于资深的薅羊毛工作者还是更多需要自己的判断,结合第三方数据平台。因为有这些数据的帮…&,&reviewingCommentsCount&:0,&meta&:{&previous&:{&isTitleImageFullScreen&:false,&rating&:&none&,&titleImage&:&https:\u002F\u002Fpic1.zhimg.com\u002F50\u002Fv2-cbfbb6edc0ffd4c_xl.jpg&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&topics&:[{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&Python&},{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&数据挖掘&},{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&beautiful soup&}],&adminClosedComment&:false,&href&:&\u002Fapi\u002Fposts\u002F&,&excerptTitle&:&&,&author&:{&bio&:&前支付宝人\u002F私募投资理财,公众号@面包茶话会&,&isFollowing&:false,&hash&:&485fa57eef58c098b714cad9&,&uid&:88,&isOrg&:false,&slug&:&bigbread&,&isFollowed&:false,&description&:&微信(请备注公司 职业 名字):
\n《数据分析侠的成长故事》作者\n公众号:面包茶话会
bread2156\n《人人都会数据分析》(20万字书):https:\u002F\u002Fitem.taobao.com\u002Fitem.htm?spm=a1z09..0.5c8b01c8LfVD4b&id=&_u=359l9svc8fb&,&name&:&面包君&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fbigbread&,&avatar&:{&id&:&v2-56a621a4cf593767ade3f71a4e848780&,&template&:&https:\u002F\u002Fpic1.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},&column&:{&slug&:&dataman&,&name&:&数据分析侠&},&content&:&\u003Cp\u003E\u003Cb\u003E——————————————禁止转载—————————————————————\u003C\u002Fb\u003E\u003C\u002Fp\u003E也是看到知乎的这个问题\u003Ca href=\&https:\u002F\u002Fwww.zhihu.com\u002Fquestion\u002F2Fanswer\u002F?group_id=039616#comment-\& class=\&internal\&\u003E你写过什么有趣的程序? - 面包君的回答 - 知乎\u003C\u002Fa\u003E,的确有很多大神写过很多好玩的东西,当年写程序的时候也是一点都不感兴趣,主要是不知道干嘛用,就像当年一直吵着要学PS,也直到美图秀秀开始盛行的时候不由自主的就去研究PS。\u003Cp\u003E刚接触数据这块的时候,就尝试着希望能够把数据从搜集到保存的流程都弄清楚(最简单的网站数据模型),到现在在新浪博客上应该还可能找到当年的代码。业余时间在家也爬了些成人网站的图片,幻想着开一个草榴网站O(∩_∩)O(年少的梦想),想想也挺逗的。这里把Python爬成人色情网站的代码共享给老司机们(只供技术交流,违法违规概不负责)。\u003C\u002Fp\u003E\u003Cp\u003E其实爬过数据的人都知道很简单,一种是urllib爬的,还是比较简单的就是beautifulsoup。\u003C\u002Fp\u003E\u003Cp\u003E比如我们先打开一个草榴类的网站(\u003Cb\u003E此处跳失率应该很高!\u003C\u002Fb\u003E)\u003C\u002Fp\u003E\u003Cp\u003E里面的html js代码结构是比较简单的,URL结构如下:\u003C\u002Fp\u003E\u003Cp\u003E  \u003Ca href=\&https:\u002F\u002Flink.zhihu.com\u002F?target=http%3A\u002F\u002Fwww\& class=\& external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E\u003Cspan class=\&invisible\&\u003Ehttp:\u002F\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&visible\&\u003Ewww\u003C\u002Fspan\u003E\u003Cspan class=\&invisible\&\u003E\u003C\u002Fspan\u003E\u003C\u002Fa\u003E.*****.com\u002Ftupianqu\u002Fyazhou\u002F111111.html\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E第一种用beautifulsoup解析html\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-python\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&c1\&\u003E# encoding=utf-8\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kn\&\u003Eimport\u003C\u002Fspan\u003E \u003Cspan class=\&nn\&\u003Eurllib\u003C\u002Fspan\u003E\n\u003Cspan class=\&kn\&\u003Efrom\u003C\u002Fspan\u003E \u003Cspan class=\&nn\&\u003Ebs4\u003C\u002Fspan\u003E \u003Cspan class=\&kn\&\u003Eimport\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EBeautifulSoup\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&n\&\u003Edebug\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&bp\&\u003ETrue\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E# 设置是否打印log\u003C\u002Fspan\u003E\n\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Elog\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Emessage\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Edebug\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eprint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Emessage\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&c1\&\u003E#面包收藏夹\u003C\u002Fspan\u003E\n\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Edownload_image\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurl\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave_path\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E \n
\u003Cspan class=\&sd\&\u003E''' 根据图片url下载图片到save_path '''\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Etry\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eurllib\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurlretrieve\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurl\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave_path\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Elog\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'Downloaded a image: '\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave_path\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eexcept\u003C\u002Fspan\u003E \u003Cspan class=\&ne\&\u003EException\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ee\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eprint\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'An error catched when download a image:'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ee\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Eload_page_html\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurl\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&sd\&\u003E''' 得到页面的HTML文本 '''\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Elog\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'Get a html page : '\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eurl\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Ereturn\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eurllib\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurlopen\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurl\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eread\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Edown_page_images\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epage\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave_dir\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&sd\&\u003E''' 下载第page页的图片 '''\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Ehtml_context\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eload_page_html\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'http:\u002F\u002Fwww.*****.com\u002Ftupianqu\u002Fyazhou\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&si\&\u003E%d\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E.html'\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E%\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Epage\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Esoup\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EBeautifulSoup\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehtml_context\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eui_module_div\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Ein\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esoup\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EfindAll\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'div'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'class'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'ui-module'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E}):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eui_module_div\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efind\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'img'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Eis\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Enot\u003C\u002Fspan\u003E \u003Cspan class=\&bp\&\u003ENone\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Eand\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehas_attr\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'alt'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Eand\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehas_attr\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'src'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Ealt\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eattrs\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'alt'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E]\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E# 图片的介绍\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Esrc\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eattrs\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'src'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E]\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E# 图片的地址\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Efilename\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'\u003C\u002Fspan\u003E\u003Cspan class=\&si\&\u003E%s%s\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E%\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ealt\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esrc\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E4\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:])\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E# 取后四位(有的图片后缀是'.jpg'而有的是'.gif')\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Edownload_image\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Esrc\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave_dir\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Efilename\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Edownload_qbcr\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efrm\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Epage_count\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave_dir\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'.\u002F'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Ein\u003C\u002Fspan\u003E \u003Cspan class=\&nb\&\u003Exrange\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efrm\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Efrm\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Epage_count\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Elog\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'Page : '\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&sb\&\u003E`x`\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Edown_page_images\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave_dir\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Emain\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E():\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Ebase_path\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'~\u002Ftemp\u002F'\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Edownload_qbcr\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efrm\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Epage_count\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E10\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave_dir\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebase_path\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003E__name__\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'__main__'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Emain\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003Edebug用来控制日志是否打印,当只需要悄悄下载图片,不想要提示的时候,debug=False就好啦。\u003C\u002Fp\u003E\u003Cp\u003Edownload_image()函数用来下载图片,它接收一个图片的url和保存的路径,然后下载它。\u003C\u002Fp\u003E\u003Cp\u003Eload_page_html()函数接收一个页面的url并返回其页面的HTML代码。\u003C\u002Fp\u003E\u003Cp\u003Edownload_qbcr()函数是整个下载的入口,它接收下载开始的页面序号frm(比如第1页)和下载的页面数量以及需要保存的位置,然后就开始处理每一页并下载。\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E这段代码中,使用到BeautifulSoup的地方只有down_page_images()函数。BeautifulSoup类接受一段HTML或者XML来构造一个对象,soup.findAll('div', {'class': 'ui-module'})表示,从soup对象对应的HTML中得到所有class属性为ui-module的div,ui-module就是页面盛放图片的那些div:\u003Cbr\u003E\u003Cfigure\u003E\u003Cimg src=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-33ba6324ffa5c733ea5aa_b.jpg\& data-rawwidth=\&478\& data-rawheight=\&175\& class=\&origin_image zh-lightbox-thumb\& width=\&478\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-33ba6324ffa5c733ea5aa_r.jpg\&\u003E\u003C\u002Ffigure\u003E\u003C\u002Fp\u003E\u003Cp\u003E然后,对这个div里的数据简要分析+处理,就可以得出图片的介绍和链接了:\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-python\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eui_module_div\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efind\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'img'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Eis\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Enot\u003C\u002Fspan\u003E \u003Cspan class=\&bp\&\u003ENone\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Eand\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehas_attr\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'alt'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Eand\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehas_attr\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'src'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Ealt\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eattrs\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'alt'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E]\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E# 图片的介绍\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Esrc\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_tag\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eattrs\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'src'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E]\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E# 图片的地址\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Efilename\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'\u003C\u002Fspan\u003E\u003Cspan class=\&si\&\u003E%s%s\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E%\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ealt\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esrc\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E4\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:])\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E# 取后四位(有的图片后缀是'.jpg'而有的是'.gif')\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E\u003Cb\u003E第二种就是通过urllib爬稍微麻烦点\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E主要就是拿到不同的类目,url和图片地址\u003C\u002Fp\u003E\u003Cp\u003E拿到不同类目:亚洲\u002F欧美\u002F卡通动漫等通过get_img_type_list\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-python\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Eget_img_type_list\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E():\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Elst\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E[]\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eresult\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ere\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efindall\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003Eur'&a.+?&\u002Fa&'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eurllib\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurlopen\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EWEBSITE\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'\u002Fjs\u002Fhead.js'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eread\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E())\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Ein\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eresult\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efind\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'piclist'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eitem\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efind\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'href='\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E6\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Erfind\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'\&'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)],\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efind\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'&'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Erfind\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'&\u002Fa&'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)])\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Elst\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eappend\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eitem\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Ereturn\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Elst\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E正常每一张图片对应着一个标签并且图片链接在src中,故以此可以构建一个分析HTML页面的解析器:\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-python\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&k\&\u003Eclass\u003C\u002Fspan\u003E \u003Cspan class=\&nc\&\u003EImagePageParser\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Esgmllib\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003ESGMLParser\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&sd\&\u003E''' parse a image page's image urls '''\u003C\u002Fspan\u003E\n\n
\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003E__init__\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&bp\&\u003Eself\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Esgmllib\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003ESGMLParser\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003E__init__\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&bp\&\u003Eself\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&bp\&\u003Eself\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EimgurlList\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E[]\u003C\u002Fspan\u003E\n\n
\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Eunknown_starttag\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&bp\&\u003Eself\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Etag\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eattrs\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Etag\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'meta'\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Eand\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eattrs\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E][\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E6\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E]\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'description'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&bp\&\u003Eself\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Etitle\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eattrs\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E][\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E7\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E]\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Edecode\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'utf-8'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eencode\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'gb2312'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Estrip\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eelif\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Etag\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'img'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ekey\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Evalue\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Ein\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eattrs\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&bp\&\u003Eself\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EimgurlList\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eappend\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Evalue\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ekey\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'src'\u003C\u002Fspan\u003E \u003Cspan class=\&k\&\u003Eelse\u003C\u002Fspan\u003E \u003Cspan class=\&bp\&\u003ENone\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E在ImagePageParser中,我们通过title保存当前页面的标题,用imgurlList保存每一个图片的地址。现在需要构建一个函数来使用ImagePageParser,并返回所有的图片地址以及这些图片的标题:\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-python\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E
\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Eget_image_url_list\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epage_url\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E
\u003Cspan class=\&sd\&\u003E''''' get all image urls from a page '''\u003C\u002Fspan\u003E
\u003Cspan class=\&n\&\u003Eparser\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EImagePageParser\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&n\&\u003Eparser\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efeed\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurllib2\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurlopen\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epage_url\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eread\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E())\u003C\u002Fspan\u003E
\u003Cspan class=\&k\&\u003Ereturn\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eparser\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EimgurlList\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eparser\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Etitle\u003C\u002Fspan\u003E
\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003Eget_image_url_list函数返回pageUrl页面里所有图片的地址以及这个页面的标题。\u003C\u002Fp\u003E\u003Cp\u003E得到页面所有图片地址后,再用另一个函数,一次性把一个列表中所有的图片下载下来:\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-python\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Edownload_image\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eimg_list\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E''\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&sd\&\u003E''' download images of a list '''\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Enot\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eos\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epath\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eexists\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'save'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Eand\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eos\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epath\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eisdir\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Esave\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)):\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eos\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Emakedirs\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Esave\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E \u003Cspan class=\&ow\&\u003Ein\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eimg_list\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Etry\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Efilename\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Esave\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'\u003C\u002Fspan\u003E\u003Cspan class=\&se\&\u003E\\\\\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E[\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Erfind\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003E'\u002F'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E+\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:]\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eprint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Efilename\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eurllib\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eurlretrieve\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Efilename\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eexcept\u003C\u002Fspan\u003E \u003Cspan class=\&ne\&\u003EException\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ee\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E:\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Eprint\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E&&\u003C\u002Fspan\u003E \u003Cspan class=\&nb\&\u003Eopen\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s1\&\u003Er'C:\\__temp\\log.txt'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E \u003Cspan class=\&s1\&\u003E'a'\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E),\u003C\u002Fspan\u003E \u003Cspan class=\&nb\&\u003Estr\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Efilename\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E),\u003C\u002Fspan\u003E \u003Cspan class=\&sb\&\u003E`e`\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E#包含图片的C盘\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E在download_image()函数中,我们接收一个图片地址列表和一个保存路径(非必须,如果没有则在当前目录下保存),函数开始时if是为了保证在传入的save路径不存在时,先创建一个文件夹。然后是遍历图片地址的列表,通过urllib.urlretrieve()函数来下载每一个图片。\u003C\u002Fp\u003E\u003Cp\u003E我们在for里面使用try-except的目的是,当下载一张图片发生错误时(网络断线、文件IO出错或者任何未知错误时),不会让整个程序崩溃掉。\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E当电脑空闲的时候,就可以悄悄在后台跑起来下载图片了,简单粗暴。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E——————————————禁止转载—————————————————————\u003C\u002Fb\u003E\u003C\u002Fp\u003E&,&state&:&published&,&sourceUrl&:&&,&pageCommentsCount&:0,&canComment&:false,&snapshotUrl&:&&,&slug&:,&publishedTime&:&T16:19:59+08:00&,&url&:&\u002Fp\u002F&,&title&:&Python爬图片网站数据&,&summary&:&\u003Cb\u003E——————————————禁止转载—————————————————————\u003C\u002Fb\u003E也是看到知乎的这个问题\u003Ca href=\&https:\u002F\u002Fwww.zhihu.com\u002Fquestion\u002F2Fanswer\u002F?group_id=039616#comment-\& class=\&internal\&\u003E你写过什么有趣的程序? - 面包君的回答 - 知乎\u003C\u002Fa\u003E,的确有很多大神写过很多好玩的东西,当年写程序的时候也是一点都不感兴趣,主要是不知道干嘛用,就…&,&reviewingCommentsCount&:0,&meta&:{&previous&:null,&next&:null},&commentPermission&:&anyone&,&commentsCount&:3,&likesCount&:149},&next&:{&isTitleImageFullScreen&:true,&rating&:&none&,&titleImage&:&https:\u002F\u002Fpic4.zhimg.com\u002F50\u002Fv2-4aff5aa9ea58_xl.jpg&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&topics&:[{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&Python&}],&adminClosedComment&:false,&href&:&\u002Fapi\u002Fposts\u002F&,&excerptTitle&:&&,&author&:{&bio&:&前支付宝人\u002F私募投资理财,公众号@面包茶话会&,&isFollowing&:false,&hash&:&485fa57eef58c098b714cad9&,&uid&:88,&isOrg&:false,&slug&:&bigbread&,&isFollowed&:false,&description&:&微信(请备注公司 职业 名字):
\n《数据分析侠的成长故事》作者\n公众号:面包茶话会
bread2156\n《人人都会数据分析》(20万字书):https:\u002F\u002Fitem.taobao.com\u002Fitem.htm?spm=a1z09..0.5c8b01c8LfVD4b&id=&_u=359l9svc8fb&,&name&:&面包君&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fbigbread&,&avatar&:{&id&:&v2-56a621a4cf593767ade3f71a4e848780&,&template&:&https:\u002F\u002Fpic1.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},&content&:&\u003Cp\u003E上点python有意思的代码。\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E环境准备\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cul\u003E\u003Cli\u003Epython2.7\u003C\u002Fli\u003E\u003Cli\u003E\u003Ca href=\&http:\u002F\u002Flink.zhihu.com\u002F?target=https%3A\u002F\u002Fgithub.com\u002Fawkman\u002Fpywifi\u002Farchive\u002Fmaster.zip\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003Epywifi模块\u003C\u002Fa\u003E\u003C\u002Fli\u003E\u003Cli\u003E字典\u003C\u002Fli\u003E\u003Cli\u003E清除系统中的任何wifi连接记录\u003C\u002Fli\u003E\u003C\u002Ful\u003E\u003Ch2\u003E\u003Cb\u003E导入模块\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E这里用的模块就这三个 pywifi的_wifiutil_linux.py脚本的 _send_cmd_to_wpas方法中的if reply != b'OK\\n':判断需要修改,不然会有很多的提示信息。\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-text\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003Efrom pywifi import *\nimport time\nimport sys\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Ch2\u003E\u003Cb\u003E字典准备\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E随机搞的wifi弱口令TOP10\u003C\u002Fp\u003E\u003Col\u003E\u003Cli\u003E3C\u002Fli\u003E\u003Cli\u003E\u003C\u002Fli\u003E\u003Cli\u003E3C\u002Fli\u003E\u003Cli\u003E\u003C\u002Fli\u003E\u003Cli\u003E3C\u002Fli\u003E\u003Cli\u003E3C\u002Fli\u003E\u003Cli\u003E3C\u002Fli\u003E\u003Cli\u003E3C\u002Fli\u003E\u003Cli\u003E\u003C\u002Fli\u003E\u003Cli\u003E3C\u002Fli\u003E\u003C\u002Fol\u003E\u003Ch2\u003E\u003Cb\u003E配置扫描器\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E推荐扫描时常可以设置在15-20秒之间 测试时常则可以自定义,考虑到认证速度于距离的关系,我一般设置在15左右,再久的也没意义 到时候就算破解成功的热点,信号也好不到哪里\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-python\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&k\&\u003Edef\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Emain\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E():\u003C\u002Fspan\u003E\n
\u003Cspan class=\&c1\&\u003E#扫描时常\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Escantimes\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E3\u003C\u002Fspan\u003E\n
\u003Cspan class=\&c1\&\u003E#单个密码测试延迟\u003C\u002Fspan\u003E\n
\u003

我要回帖

更多关于 网贷平台数据 的文章

 

随机推荐