利用python抓取页面数据

1、首先是安装python(注意python3.X和python2.X是不兼容的,我们最好用python3.X)

  安装方法:安装python

2、安装成功后,再进行我们需要的插件安装。(这里我们需要用到requests和pymssql两个插件re是自带的)注:这里我们使用的是sqlserver所以安装的是pymssql,如果使用的是mysql可以参考:安装mysql驱动

  安装插件的方法为

  安装pymssql->进入命令行输入命令:pip install pymssql

  安装requests->进入命令行输入命令:pip install requests

可以通过命令pip list来查看是否安装成功。

  

3、安装完成后,我们编写代码如下:

import requestsfrom requests.exceptions import RequestExceptionimport reimport pymssql#通过url获得页面内容def get_one_page(url):    try:        response = requests.get(url)     #解决乱码问题     response.encoding = response.apparent_encoding        if response.status_code == 200:            return response.text        return None    except RequestException:        return None#通过正则表达式抓取我们所需要的页面内容        def parse_one_page(html):    pattern = re.compile('<div class='newBox'>.*?src='(.*?)'.*?<h4>.*?<div class='fp_subtitle'>.*?>(.*?)</a></div>.*?</h4>.*?<p>(.*?)</p>.*?<span>(.*?)</span>.*?<span>(.*?)</span>.*?<span>(.*?)</span>.*?</div>',re.S)    items = re.findall(pattern,html)    return items;#数据库连接def db_conn():    server = '192.168.6.111\mssqlzf'    user = 'sa'    password = 'sa@2016'    database = 'zfnewdb'    return pymssql.connect(server, user, password, database)#定义main()    def main():    conn = db_conn()    url = 'http://www.stdaily.com/cxzg80/index.shtml'    html = get_one_page(url)    cursor = conn.cursor()    #将抓取回来的数据循环插入到数据库中,注意:parse_one_page返回的数据类型为    for item in parse_one_page(html):        cursor.execute('INSERT INTO tblGrabNews VALUES (%s,%s,%s,%s,%s,%s)',(item[1], item[2], item[0], item[5], item[3], item[4]))        conn.commit()    conn.close()#执行main()    if __name__ == '__main__':    main()

注意,parse_one_page(html)函数返回的数据类型如下:[(),(),()...],所以上面程序要的for循环才会那么去写,如果不知道什么是list和tuple的同学可以看一下这篇文章list和tuple

  

运行上述代码后,可在数据库中看到爬下来的数据。

数据表结构为:

create table [zfnewdb].[dbo].[tblGrabNews] (
  id int identity (1,1) primary key,
  title varchar(255),
  content text,
  imageInfo text,
  publicTime varchar(100),
  sourceInfo varchar(100),
  responsibleEditer varchar(100)
)

希望能帮助到有需要的人。

(0)

相关推荐

  • Jetson TX1正式使用前的工作

    虽然我千辛万苦的等来了电源,可惜自带的空间太小了.enmmmmmm,可能为了省钱,你说16G的eMMc恶心谁... 先夸一点,自带串口,香哭了啊,一插数据线,非常销魂: 就是这里 串口连接 我直接登录 ...

  • python pymssql库调用存储过程

    今天项目使用到调用一个sql server的存储过程读取其中内容然后存到另一张表,作为一个看板使用的数据.百度了一圈,亲测下面方法可用! 一 安装sql server的库 pip install py ...

  • (21条消息) MAC 安装Python3.7

    Mac自带Python,有些软件的运行可能需要用到2.X的版本,而3的版本与2的版本区别甚大,作为python 开发还是需要安装最新的3.x版本 1.下载python3.7 https://www.p ...

  • 第71天: Python Scrapy 项目实战

    爬虫编写流程 首先明确 Python 爬虫代码编写的流程:先直接打开网页,找到你想要的数据,就是走一遍流程.比如这个项目我要爬取历史某一天所有比赛的赔率数据.每场比赛的比赛结果等. 那么我就先打开这个 ...

  • python学习笔记-MySQL数据库连接相关

    import pymssql #引入pymssql模块 server = "localhost" user = "root" password = " ...

  • 成功解决 _mssql.c(568): fatal error C1083: 无法打开包括文件: “sqlfront.h”: No such file or directory

    成功解决 _mssql.c(568): fatal error C1083: 无法打开包括文件: "sqlfront.h": No such file or directory 解 ...

  • python3.9安装pip

    在Windows上使用 Python 中文DOC 英文doc https://packaging.python.org/tutorials/installing-packages/ If that s ...

  • 如何利用Matlab抓取网页数据

    %朋友需要做金融方面的分析,要求从网站上下载大量的数据,一个一个复制粘贴太费事.我写了一个简单的网络爬虫,主要用到正则表达式,可以自动下载网页源文件里面的数据. clc; clear; warning ...

  • 『爬虫四步走』手把手教你使用Python抓取并存储网页数据!

    爬虫是Python的一个重要的应用,使用Python爬虫我们可以轻松的从互联网中抓取我们想要的数据,本文将基于爬取B站视频热搜榜单数据并存储为例,详细介绍Python爬虫的基本流程.如果你还在入门爬虫 ...

  • Python爬虫入门,快速抓取大规模数据(第二部分)

    通过第一部分的练习,我们已经有了一个可运行的爬虫.这一部分我们详细的看看如何使用BeautifulSoup从网页中提取我们需要的数据,学习的目标是能够使用BeautifulSoup从网页中提取任意的数 ...

  • Python爬虫入门,快速抓取大规模数据

    大到各类搜索引擎,小到日常数据采集,都离不开网络爬虫.爬虫的基本原理很简单,遍历网络中网页,抓取感兴趣的数据内容.这篇文章会从零开始介绍如何编写一个网络爬虫抓取数据,然后会一步步逐渐完善爬虫的抓取功能 ...

  • Python爬虫入门,快速抓取大规模数据(第四部分)

    如果没有读过前两部份的读者,建议先看前面几部份: 当前大部分网站都使用JS动态的加载内容,浏览器执行JS并生成网页内容.因为Python的requests库不会像浏览器一样执行JS,所以抓取到的内容并 ...

  • 「爬虫四步走」手把手教你使用Python抓取并存储网页数据

    爬虫是Python的一个重要的应用,使用Python爬虫我们可以轻松的从互联网中抓取我们想要的数据,本文将基于爬取B站视频热搜榜单数据并存储为例,详细介绍Python爬虫的基本流程.如果你还在入门爬虫 ...

  • 怎么用Python写爬虫抓取网页数据

    机器学习首先面临的一个问题就是准备数据,数据的来源大概有这么几种:公司积累数据,购买,交换,政府机构及企业公开的数据,通过爬虫从网上抓取.本篇介绍怎么写一个爬虫从网上抓取公开的数据. 很多语言都可以写 ...

  • 如何让Python爬虫一天抓取100万张网页,爬虫抓取网页数据

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 王平 源自:猿人学Python PS:如有需要Python学习资料的 ...

  • Python 逆向抓取 APP 数据

    今天继续给大伙分享一下 Python 爬虫的教程,这次主要涉及到的是关于某 APP 的逆向分析并抓取数据,关于 APP 的反爬会麻烦一些,比如 Android 端的代码写完一般会进行打包并混淆加密加固 ...