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

简介: 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)

三、Python爬虫视频教程

1、Python网络爬虫实战

2、Python3爬虫三大案例实战分享

四、Python爬虫的相关连接

1、python爬虫的最佳实践

2、Python网络爬虫实战项目代码大全

3、零基础制作一个Python 爬虫

4、Python爬虫入门

5、Python3

7、抓取斗鱼tv的房间信息

如果你想学习Python可以来这个群,首先是四七二,中间是三零九,最后是二六一,里面有大量的学习资料可以下载。

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

1、Python爬虫小白入门

2、轻松自动化---selenium-webdriver(python)

3、 Python 正则表达式 re 模块简明笔记

4、【Python 笔记】selenium 简介

5、Selenium Webdriver定位页面元素的几种方式

6、 Python爬虫利器Selenium+PhantomJS系列入门

7、Python爬虫入门(7):正则表达式

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

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']

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

新闻内文信息抽取函数

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爬虫系列(一)初期学习爬虫的拾遗与总结

七、感想

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

相关文章
|
11天前
|
Python
python学习3-选择结构、bool值、pass语句
python学习3-选择结构、bool值、pass语句
|
1天前
|
运维 Shell Python
Shell和Python学习教程总结
Shell和Python学习教程总结
|
2天前
|
Python
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念
|
2天前
|
开发框架 前端开发 数据库
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
|
2天前
|
数据采集 数据可视化 数据处理
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
|
2天前
|
存储 网络协议 关系型数据库
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信
|
4天前
|
数据采集 存储 JSON
Python爬虫面试:requests、BeautifulSoup与Scrapy详解
【4月更文挑战第19天】本文聚焦于Python爬虫面试中的核心库——requests、BeautifulSoup和Scrapy。讲解了它们的常见问题、易错点及应对策略。对于requests,强调了异常处理、代理设置和请求重试;BeautifulSoup部分提到选择器使用、动态内容处理和解析效率优化;而Scrapy则关注项目架构、数据存储和分布式爬虫。通过实例代码,帮助读者深化理解并提升面试表现。
13 0
|
7天前
|
数据采集 JavaScript 前端开发
使用Python打造爬虫程序之破茧而出:Python爬虫遭遇反爬虫机制及应对策略
【4月更文挑战第19天】本文探讨了Python爬虫应对反爬虫机制的策略。常见的反爬虫机制包括User-Agent检测、IP限制、动态加载内容、验证码验证和Cookie跟踪。应对策略包括设置合理User-Agent、使用代理IP、处理动态加载内容、验证码识别及维护Cookie。此外,还提到高级策略如降低请求频率、模拟人类行为、分布式爬虫和学习网站规则。开发者需不断学习新策略,同时遵守规则和法律法规,确保爬虫的稳定性和合法性。
|
9天前
|
机器学习/深度学习 算法 Python
使用Python实现集成学习算法:Bagging与Boosting
使用Python实现集成学习算法:Bagging与Boosting
18 0
|
10天前
|
Python
python学习-函数模块,数据结构,字符串和列表(下)
python学习-函数模块,数据结构,字符串和列表
49 0