前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python爬虫系列(一)初期学习爬虫的拾遗与总结(11.4更)

Python爬虫系列(一)初期学习爬虫的拾遗与总结(11.4更)

作者头像
致Great
发布2018-04-11 17:34:03
1.3K0
发布2018-04-11 17:34:03
举报
文章被收录于专栏:程序生活

最近,为了提取裁判文书网的有关信息,自己迈入Python的学习之路,写了快两周的代码,自己写这篇文章总结下踩过的坑,还有遇到一些好的资料和博客等总结下(站在巨人肩膀上,减少重复工作),以便自己后期复习和参考和、分享给大家交流学习,也欢迎大家补充些精彩内容。

一、环境搭建和工具准备

1、为了省去时间投入学习,推荐直接安装集成环境 Anaconda 2、IDE:Pycharm、Pydev 3、工具:Jupyter Notebook(安装完Anaconda会有的)

二、Python基础视频教程

1、疯狂的Python:快速入门精讲(Python2.x,可体验到与Python3.x的差异) 2、零基础入门学习Python(小甲鱼的视频课程) 看完这些课程,自己对Python有一个感觉和掌握,可以继续看一些进阶教程 3、Python3大全(pasword:bf3e)(ps:如果连接失效大家可以留下百度云账号)

三、Python爬虫视频教程

1、Python网络爬虫实战(完整的看下来,收获不小) 2、Python3爬虫三大案例实战分享(非常好的课程,很多干货)

四、Python爬虫的相关连接

1、python爬虫的最佳实践 2、Python网络爬虫实战项目代码大全 3、零基础制作一个Python 爬虫 4、Python爬虫入门 5、Python3(csdn博客) 7、抓取斗鱼tv的房间信息

五、正则表达式和BeautifulSoup、PhatomJS +Selenium、urllib、代理的使用

正则表达式

----

1、Python爬虫小白入门 2、 Python 正则表达式 re 模块简明笔记 3、Python爬虫入门(7):正则表达式 4、Python3中正则表达式使用方法 (这篇文章最棒了,仔细写下来足够了-6.8) PhatomJS +Selenium

----

1、【Python 笔记】selenium 简介 2、Selenium Webdriver定位页面元素的几种方式 3、 Python爬虫利器Selenium+PhantomJS系列入门 4、轻松自动化---selenium-webdriver(python)(ps:系列教程) 5、selenium2.0关于python的常用函数(一)(ps:定位元素的方法) BeautifulSoup和Xpath

----

1、Python爬虫入门(8):Beautiful Soup的用法 2、Python爬虫利器三之Xpath语法与lxml库的用法 (大家可以关注写这些文章的作者,一般他们有Python文集,大家可以收藏下有参考价值的文章) urllib

----

1、 Python之urlparse模块 (ps:解析图片的src地址很有用) 2、Python urllib模块urlopen()与urlretrieve()详解(‘下载文件很有用’)                      代理

----

1、自建免费PYTHON爬虫代理IP池 2、关于Python爬虫代理,看这篇就够了

六、自己爬取新浪新闻相关信息的实战

爬取页面

我直接把源码贴在这里了,是参考Python网络爬虫实战课程做下来的

新闻评论数抽取函数

import re import json import requests #js抓取新闻评论信息 commentURL='http://comment5.news.sina.com.cn/page/info?version=1&format=js&\ channel=gn&newsid=comos-{}&\ group=&compress=0&ie=utf-8&oe=utf-8&page=1&page_size=20&jsvar=loader_1491395188566_53913700' def getCommentCounts(newsurl): #获取新闻id m=re.search('doc-i(.+).shtml',newsurl) newsid=m.group(1) #根据新闻id获取评论信息 comments=requests.get(commentURL.format(newsid)) #将信息解析为json格式 jd=json.loads(comments.text.strip('var loader_1491395188566_53913 700=')) return jd['result']['count']['total']

新闻内文信息抽取函数

import requests from datetime import datetime from bs4 import BeautifulSoup def getNewsDetail(newsurl): result={} res=requests.get(newsurl) res.encoding='utf-8' soup=BeautifulSoup(res.text,'html.parser') result['title']=soup.select('#artibodyTitle') timesource=soup.select('.time-source')[0].contents[0].strip() result['dt']=datetime.strptime(timesource,'%Y年%m月%d日%H:%M') result['source']=soup.select('.time-source span a')[0].text result['article']=' '.join([p.text.strip() for p in soup.select('#artibody p')[:-1]]) result['editor']=soup.select('.article-editor')[0].text.lstrip('责任编辑:') return result

七、感想

这些天学习下来,Python爬虫思路和套路很明确,主要是我们要对不同网站(反爬等)设计不同爬取路线和方法,但是还是要求自己总结方法和积累知识吧,还有一点自己也希望能把爬虫运用到实际生活或者应用中(如果单纯的抽取一个网页信息其实没多大意思),比如尝试应用到批量下载一个网站的图片或者文件等等,让爬虫为我们服务。


(ps:自己会持续更新和补充内容,也换大家留言补充)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.04.16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、环境搭建和工具准备
  • 二、Python基础视频教程
  • 三、Python爬虫视频教程
  • 四、Python爬虫的相关连接
  • 五、正则表达式和BeautifulSoup、PhatomJS +Selenium、urllib、代理的使用
  • 六、自己爬取新浪新闻相关信息的实战
  • 七、感想
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档