Python爬虫开发入门视频教程

《互联网人才趋势白皮书》显示,虽然大批IT从业人员转型Python开发,但人工智能与大数据高速发展带来的大基数人才缺口,正期待着大家的快速加入。

爬虫开发代码如下:(前提是你电脑上面已经安装了mysql)数据库名称和表结构如下图:

第一步:安装项目需要的包 (采用阿里巴巴镜像安装快一些)

pip install -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com  requests

pip install -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com re

pip install -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com pymysql

pip install -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com time

pip install -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com BeautifulSoup

第二步:新建python项目,创建一个python文件,输入如下代码:

import requests
import re
import pymysql
import time
from bs4 import BeautifulSoup
conn=pymysql.connect(
    user='root',
    password='123456',
    port=3306,
    host='127.0.0.1',
    db='mydb',
    charset='utf8'
)
cursor=conn.cursor()
cursor.execute('set names utf8')
cursor.execute('set autocommit=1')
i=2039
while(i<2059):
    print("正在采集id="+str(i)+"的文章")
    #爬虫的三要素:抓取 分析 存储
    try:
        #抓取部分开始
        url="http://yyjcw.com/html/News/{0}.html".format(i)
        response=requests.get(url)
        response.encoding="utf-8"#设置编码
        html=response.content
        soup=BeautifulSoup(html,"html.parser")
        #print(soup)
        #抓取部分结束
        htmlstr=str(soup) #把对象soup转为字符串类型
        patt1=re.compile(r"<td\sid=\"td_title\">\s<a\sclass=\"gotobuy\"\shref=\"http://www.yyjcw.com/list.html\"\starget=\"_blank\">立即购买视频教程</a>\s*(.*)\s*</td>")
        titles=re.search(patt1,htmlstr)
        patt2=re.compile(r"<td\sid=\"td_date\">\s<a\shref=\"http://www.yyjcw.com\"\starget=\"_blank\"\stitle=\".*\">(.*)</a>\s来源:(.*)\s日期:(.*)\s*</td>")
        info=re.search(patt2,htmlstr)
        patt3=re.compile(r"<td\sid=\"td_content\">\s*(.*)\s*</td>")
        contents=re.search(patt3,htmlstr)
        ititle=titles.group(1)
        iauthor=info.group(1)
        isource=info.group(2)
        icreatetime=info.group(3)
        icontent=contents.group(1)
        # print(titles.group(1))
        # print(info.group(1))
        # print(info.group(2))
        # print(info.group(3))
        # print(contents.group(1))
        sqlstr="insert into tbnews (title,author,source,createtime,details) values ('{0}','{1}','{2}','{3}','{4}')".format(ititle.strip(),iauthor.strip(),isource.strip(),icreatetime.strip(),icontent.strip())
        print(sqlstr)
        cursor.execute(sqlstr)
        conn.commit()
        print("数据插入成功!")
        i =i+1
        time.sleep(5)
    except:
        i=i+1
cursor.close()
conn.close()








需要根据你自己电脑上面mysql的账号和密码修改下数据库连接字符串。

也就是上面代码中的:

conn=pymysql.connect(
    user='root',
    password='123456',
    port=3306,
    host='127.0.0.1',
    db='mydb',
    charset='utf8'
)

第三步:运行上面的代码。(上面新创建的文件上面点击右键,运行该文件)

就可以实现文章的批量采集了。

如果大家在学习过程中有不懂的地方还可以参考下面的视频教程。

视频目录如下:(源码百度网盘下载)

 这套教程是一套非常适合初学者的python视频教程,这套教程详细讲解了环境的安装和配置、变量、数据类型、运算符、流程控制、队列、元组、字典、函数、面向对象(抽象、封装、继承、多态、构造函数等)、python中的包和模块、文件和文件夹模块、正则表达式、python操作sql server、python操作mysql,两种关系型数据库都讲解了,爬虫部分利用requests模块、BeautifulSoup模块和正则表达式实现网络数据的批量采集、分析、筛选和存储等。  

发布了8 篇原创文章 · 获赞 4 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/tangyan1207/article/details/105225743