利用Python网络爬虫爬取学校官网十条标题
利用Python网络爬虫爬取学校官网十条标题
案例代码:
# __author : "J"
# date : 2018-03-06 # 导入需要用到的库文件
import urllib.request
import re
import pymysql # 创建一个类用于获取学校官网的十条标题
class GetNewsTitle: # 构造函数 初始化
def __init__(self):
self.request = urllib.request.Request("http://www.sict.edu.cn/") # 需要爬取的网址
# 利用正则表达式筛选数据
self.my_re = re.compile(
r'学校要闻.*?' +
r'"a2" >(.*?)</a>.*?' +
r'"a2" >(.*?)</a>.*?' +
r'"a2" >(.*?)</a>.*?' +
r'"a2" >(.*?)</a>.*?' +
r'"a2" >(.*?)</a>.*?' +
r'"a2" >(.*?)</a>.*?' +
r'"a2" >(.*?)</a>.*?' +
r'"a2" >(.*?)</a>.*?' +
r'"a2" >(.*?)</a>.*?' +
r'"a2" >(.*?)</a>.*?' +
r'院部简讯') # 创建一个方法
def get_html(self):
try:
response = urllib.request.urlopen(self.request)
# 获取目标网页源码
my_html = response.read().decode('GB2312').replace("\r\n", "")
return my_html
except urllib.request.HTTPError as e:
print(e.code)
print(e.reason)
return # 创建一个函数,利用正则获取指定标题
def get_titles(self, my_html):
news_titles = re.findall(self.my_re, my_html)
return news_titles # 创建一个方法,把获取到的标题存入mysql数据库
def into_mysql(self, titles):
for num in range(10):
connection = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='******', db='school',
charset='utf8')
cursor = connection.cursor()
sql = "INSERT INTO `newsTitles` (`title`) VALUES ('" + titles[0][num] + "')"
cursor.execute(sql)
connection.commit()
cursor.close()
connection.close() # 执行函数的入口
def start(self):
self.into_mysql(self.get_titles(self.get_html()))
print("存储成功!") # 实例化类
s = GetNewsTitle()
# 调用方法开始执行
s.start()
效果:
利用Python网络爬虫爬取学校官网十条标题的更多相关文章
- 如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)
前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往下继续深入. 一.代码实现 1.修改Scrapy项目中的items.py ...
- 如何利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例
前几天给大家分享了利用Python网络爬虫抓取微信朋友圈的动态(上)和利用Python网络爬虫爬取微信朋友圈动态——附代码(下),并且对抓取到的数据进行了Python词云和wordart可视化,感兴趣 ...
- 如何利用Python网络爬虫抓取微信朋友圈的动态(上)
今天小编给大家分享一下如何利用Python网络爬虫抓取微信朋友圈的动态信息,实际上如果单独的去爬取朋友圈的话,难度会非常大,因为微信没有提供向网易云音乐这样的API接口,所以很容易找不到门.不过不要慌 ...
- 利用Python网络爬虫抓取微信好友的所在省位和城市分布及其可视化
前几天给大家分享了如何利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例,感兴趣的小伙伴可以点击链接进行查看.今天小编给大家介绍如何利用Python网络爬虫抓取微信好友的省位和城市,并且将 ...
- 利用Python网络爬虫抓取微信好友的签名及其可视化展示
前几天给大家分享了如何利用Python词云和wordart可视化工具对朋友圈数据进行可视化,利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例,以及利用Python网络爬虫抓取微信好友的所 ...
- 如何用Python网络爬虫爬取网易云音乐歌曲
今天小编带大家一起来利用Python爬取网易云音乐,分分钟将网站上的音乐down到本地. 跟着小编运行过代码的筒子们将网易云歌词抓取下来已经不再话下了,在抓取歌词的时候在函数中传入了歌手ID和歌曲名两 ...
- Python网络爬虫-爬取微博热搜
微博热搜的爬取较为简单,我只是用了lxml和requests两个库 url=https://s.weibo.com/top/summary?Refer=top_hot&topnav=1& ...
- 04 Python网络爬虫 <<爬取get/post请求的页面数据>>之requests模块
一. urllib库 urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在Python3中的为urllib.request和urllib ...
- python网络爬虫&&爬取网易云音乐
#爬取网易云音乐 url="https://music.163.com/discover/toplist" #歌单连接地址 url2 = 'http://music.163.com ...
随机推荐
- ubuntu16.04 1080ti显卡驱动安装
https://blog.csdn.net/qq_38451119/article/details/81008165 https://blog.csdn.net/lernering/article/d ...
- octomap的简介
装载自高翔博士的博客:https://www.cnblogs.com/gaoxiang12/p/5041142.html 什么是octomap? RGBD SLAM的目的有两个:估计机器人的轨迹,并建 ...
- oracle 日期格式化和数据去重
1.获取系统日期: select sysdate as date1 from dual: 当前时间减去7分钟的时间 select sysdate,sysdate - interval '7' MINU ...
- 计蒜客 31452 - Supreme Number - [简单数学][2018ICPC沈阳网络预赛K题]
题目链接:https://nanti.jisuanke.com/t/31452 A prime number (or a prime) is a natural number greater than ...
- codeforces 761D - Dasha and Very Difficult Problem
time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standa ...
- 替换{0}为指定的字符串(MessageFormat)
package com.text; import java.text.MessageFormat; /**替换{0}为指定的字符串*/ public class MessageFormatTest { ...
- Taking a peek inside with the Actuator
Taking a peek inside with the Actuator <dependency> <groupId>org.springframework.boot< ...
- LoadRunner-录制脚本中文显示乱码
录制的脚本中中文字符显示乱码 在Tools->Recording Options中设置支持UTF-8即可
- 洛谷P3953 逛公园 [noip2017] 图论+dp
正解:图论(最短路)+dp(记忆化搜索) 解题报告: 这题真的是个好东西! 做了这题我才发现我的dij一直是错的...但是我以前用dij做的题居然都A了?什么玄学事件啊...我哭了TT 不过其实感觉还 ...
- grunt学习二
1. 新建文件和文件目录 mkdir grunt-in-action cd grunt-in-action cd grunt-in-action mkdir grunt-empty cd grunt- ...