python爬取文件归类_【Python | 边学边敲边记】第七次: 分类爬取医疗信息网站图片...

本文介绍了如何使用Python爬虫爬取医疗信息网站的图片并进行分类存储,包括下载到本地、存储到MySQL数据库以及本地CSV文件。详细讲解了XPath的使用、数据库操作和翻页爬取思想,提供了完整代码示例。
摘要由CSDN通过智能技术生成

一、 前言

今天X先生带大家正真的实战:爬取医疗信息网站的图片及分类存储到本地和存储到MySql数据库。

读完本文,可能需要10到20分钟不等,你可以学到:Xpath语法再详解,实战,翻页、多页面爬取思想,数据存储三种方法:下载到本地、存储到Mysql数据库、存储到本地csv文件,开学前最后一批干货,满满的。

评论区置顶第一期赠书获奖名单(昨天已经在极简交流群里公布过啦!)

二、基本知识回顾

1.Xpath基本使用

1)安装方法

直接推荐方法:豆瓣源安装(其他安装方法自己可百度)

2)基础语法及使用学习:

【Python | 边学边敲边记】第五次:Xpath实战训练

该文章详细介绍了Xpath的基本使用方法,包括常用语法介绍。

2.数据库操作之Pymysql

1)安装方法

直接推荐方法:豆瓣源安装(其他安装方法自己可百度)

pip install -i https://pypi.douban.com/simple/ pymysql

2)基本使用介绍

import pymysql

# 数据库连接

conn = pymysql.connect(host = "localhost",port = 3306,user = "你的数据库登录名",

password = "你的数据库登录名",charset="utf8",database = "你的数据库名称")

# 使用cursor()方法获取操作游标

cur = conn.cursor()

# 执行sql语句(可以是增删查改任意操作)

cur.execute(sql)

# 提交会话

conn.commit()

# 关闭数据库连接

三、看代码,边学边敲边记Xpath系统实战训练

1.图解我们要爬取的网站

网站结构图解

我们爬取的主页面是http://www.med361.com,它的下面有很多医疗商品类别(图中我们用1:n的形式给出),而每一个category(类别)下又有多个product(商品)(图中我们用1:n的形式给出),当然进入详细商品主页面后,还会有很多url,后面爬取时细说。

2.访问主页面,利用Xpath来获取所有商品类别url

(1)基础代码

'''

author : 极简XksA

data : 2018.8.31

goal : 爬取医疗网站图片

'''

import requests

from lxml import etree

def get_respones_data(branch_url):

# requests 发送请求

get_response = requests.get(branch_url)

# 将返回的响应码转换成文本(整个网页)

get_data = get_response.text

# 解析页面

a = etree.HTML(get_data)

return a

# 主页面

mian_url = "http://www.med361.com"

# 发送请求,获取Xpath格式页面

response_01 = get_respones_data(mian_url)

# 不同医疗商品类别url

# 上一页

branch_url_1 = response_01.xpath("/html/body/div[2]/div/div/div/div[1]/ul/li/a/@href")

# 下一页

branch_url_2 = response_01.xpath("/html/body/div[2]/div/div/div/div[2]/ul/li/a/@href")

print(branch_url_1)

print(branch_url_2)

(2)Xpath路径选择分析

1)图片分析:

商品类别url分析01

商品类别url分析02

2)文字解说:

# 上一页

"/html/body/div[2]/div/div/div/div[1]/ul/li[1]/a"

"/html/body/div[2]/div/div/div/div[1]/ul/li[4]/a"

"/html/body/div[2]/div/div/div/div[1]/ul/li[10]/a"

# 下一页

"/html/body/div[2]/div/div/div/div[2]/ul/li[1]/a"

上面是我选取的几个不同类别的医疗商品的Xpath路径,可以发现规律,在改变的只有最后一个li标签,而我们要获

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值