Python 爬虫实例(7)—— 爬取 新浪军事新闻
我们打开新浪新闻,看到页面如下,首先去爬取一级 url,图片中蓝色圆圈部分
第二zh张图片,显示需要分页,
源代码:
# coding:utf-8import json import redis import time import requests session = requests.session() import logging.handlers import pickle import sys import re import datetime from bs4 import BeautifulSoupimport sys reload(sys) sys.setdefaultencoding('utf8')import datetime # 生成一年的日期 def dateRange(start, end, step=1, format="%Y-%m-%d"):strptime, strftime = datetime.datetime.strptime, datetime.datetime.strftimedays = (strptime(end, format) - strptime(start, format)).daysreturn [strftime(strptime(start, format) + datetime.timedelta(i), format) for i in xrange(0, days, step)]def spider():date_list = dateRange("2017-01-01", "2018-01-06")[::-1]print date_listfor date in date_list:for page in range(1,5):#组合urlurl = "http://roll.mil.news.sina.com.cn/col/zgjq/" + str(date)+"_"+ str(page) +".shtml"# 伪装请求头headers = {"Host":"roll.mil.news.sina.com.cn","Cache-Control":"max-age=0","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36","Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","Accept-Encoding":"gzip, deflate","Accept-Language":"zh-CN,zh;q=0.8","If-Modified-Since":"Sat, 06 Jan 2018 09:57:24 GMT",}result = session.get(url=url,headers=headers).content#编码格式是 gb2312,使用BeautifulSoup解决编码格式soup = BeautifulSoup(result,'html.parser')#找到新闻列表result_div = soup.find_all('div',attrs={"class":"fixList"})[0]#去下换行result_replace = str(result_div).replace('\n','').replace('\r','').replace('\t','')#正则匹配信息result_list = re.findall('<li>(.*?)</li>',result_replace)for i in result_list:#匹配出来新闻 url, name,time news_url = re.findall('<a href="(.*?)" target=',i)[0]news_name = re.findall('target="_blank">(.*?)</a>',i)[0]news_time = re.findall('<span class="time">\((.*?)\)</span>',i)[0]print news_urlprint news_nameprint news_timespider()
Python 爬虫实例(7)—— 爬取 新浪军事新闻相关推荐
- python爬虫-使用BeautifulSoup爬取新浪新闻标题
** python爬虫-使用BeautifulSoup爬取新浪新闻标题 ** 最近在学习爬虫的技巧,首先学习的是较为简单的BeautifulSoup,应用于新浪新闻上. import requests ...
- Python爬虫实例(二)——爬取新冠疫情每日新增人数
Python是世界上最美的语言 大家好,我是Henry! 疫情以来,相信大家每天都关注着疫情的实时动态,许多网站上也post了疫情的相关资料. 丁香园 百度 各个网站都会统计每日新增,刚学了Matpl ...
- Python爬虫系列之爬取微信公众号新闻数据
Python爬虫系列之爬取微信公众号新闻数据 小程序爬虫接单.app爬虫接单.网页爬虫接单.接口定制.网站开发.小程序开发 > 点击这里联系我们 < 微信请扫描下方二维码 代码仅供学习交流 ...
- python爬虫scrapy爬取新闻标题及链接_18Python爬虫---CrawlSpider自动爬取新浪新闻网页标题和链接...
一.爬取新浪新闻思路 1.创建scrapy项目 2.分析新浪新闻网站静态页面代码 3.编写对应的xpath公式 4.写代码 二.项目代码 步骤1.创建scrapy项目 scrapy startproj ...
- Python爬虫实例: 爬取“最好大学网”大学排名
实例2 爬取大学排名 上海交通大学设计了一个"最好大学网",上面列出了当前的大学排名.我们要设计爬虫程序,爬取大学排名信息. 爬虫功能要求: 输入:大学排名URL链接 输出:大学排 ...
- python爬虫实例之爬取智联招聘数据
这是作者的处女作,轻点喷.... 实习在公司时领导要求学习python,python的爬虫作为入门来说是十分友好的,话不多说,开始进入正题. 主要是爬去智联的岗位信息进行对比分析出java和pytho ...
- Python爬虫实例:爬取猫眼电影——破解字体反爬
字体反爬 字体反爬也就是自定义字体反爬,通过调用自定义的字体文件来渲染网页中的文字,而网页中的文字不再是文字,而是相应的字体编码,通过复制或者简单的采集是无法采集到编码后的文字内容的. 现在貌似不少网 ...
- python爬取b站搜索结果_Python爬虫实例:爬取猫眼电影——破解字体反爬,Python爬虫实例:爬取B站《工作细胞》短评——异步加载信息的爬取,Python爬虫实例:爬取豆瓣Top250...
字体反爬 字体反爬也就是自定义字体反爬,通过调用自定义的字体文件来渲染网页中的文字,而网页中的文字不再是文字,而是相应的字体编码,通过复制或者简单的采集是无法采集到编码后的文字内容的. 现在貌似不少网 ...
- Python爬虫实例:爬取 viveport 上 1406 款VR游戏信息
这次我们准备爬取 HTC VIVE 的VR内容平台--Viveport,上面有 1406 款优质的 VR 游戏/应用,本次我们的目标就是把这些游戏的详细信息爬取下来. 首先我们去该网站看一下(http ...
最新文章
- java上传网络图片_java网络编程之图片上传
- mapreduce 算法
- org.activiti.engine.ActivitiException: Couldn‘t deserialize object in variable ‘application‘
- php 框架获取服务器,Thinkphp 框架基础之源码获取、环境要求与目录结构分析
- AOJ 558 Cheese(bfs)
- 如何在搜狗浏览器更换页面字体?搜狗浏览器更换页面字体的方法
- matlab中x从0到5不含0,关于MATLAB的数学建模算法学习笔记
- C#:WebBrowser中伪造referer,为何对流量统计器无效?
- 安装vs2008出现MSI returned error code 1603的错误的解决
- 计算机设置鼠标关灯,老司机详解罗技鼠标怎样关闭灯光
- 怎么在WORD里给文字“框”起来,干货在这里,WORD文档中文字加边框的独家教程
- html中伪类选择符,【CSS选择符】伪类和伪元素
- RL中的策略优化问题
- 罗克韦尔AB PLC 通过RSLinx Classic与PLC建立通信的具体方法步骤
- 产业分析:2021中国股权投资动态
- 国产系统中标麒麟neokylin上的可视化大屏电子看板系统
- 北京租房子被骗---------每日反省篇
- 最新百度 阿里 华为 腾讯 谷歌面试笔试题及解析
- 平面、超平面的法线,平行超平面的距离
- 基于Python的江苏大学校园网暴力破解