爬虫系列之爬取丁香园用户主页(上)

目录


0.写在前面

1.分析页面

2.获取页面源码

3.解析数据

4.数据存储及导出

4.1 数据存储

4.2 数据导出

5.pandas实现导出

6.面向对象封装


0.写在前面

目标页面

 
 

http://i.dxy.cn/profile/yilizhongzi

目的

爬取丁香园用户主页的信息,这些信息如下图字段:

640?wx_fmt=png


爬取字段图

也就是从用户主页提取这些数据,那么我们开始实战!

1.分析页面

640?wx_fmt=png


分析页面图


我们需要爬取的信息就是上述图中侧边栏信息,它对应的源码如图中红色方框所示!

思路

  • 第一步:获取页面源码

  • 第二步:通过xpath解析对应数据,并存储为字典格式

  • 第三步:存储至MongoDB数据库,并利用可视化工具导出csv文件

  • 第四步:存储至excel中(或csv文件)中

2.获取页面源码

 
 

def get_html(self):
    headers = {
        'User-Agent''Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36',
    }
    req = requests.get(self.url, headers=headers).text
    # print(req)
    return req

3.解析数据

  • xpath解析方法

以下面实际例子为例:

谷歌浏览器右键检查,页面分析源码,找到如下图的div,然后会发现class="follows-fans clearfix"里面包含这三个关注、粉丝、丁当相关信息。

在Python中爬取丁香园(DXY,中国知名的医疗健康信息网站)的药物说明书通常涉及网络爬虫技术,特别是使用如BeautifulSoup、Scrapy等库配合requests库来抓取网页内容。以下是简单的步骤: 1. **安装必要的库**: 首先需要安装`requests`用于发送HTTP请求,`lxml`或`bs4`(BeautifulSoup的库)用于解析HTML。 ```bash pip install requests beautifulsoup4 ``` 2. **编写爬虫脚本**: 使用Python创建一个函数,通过URL获取药品详情页面,并解析出所需的药品说明部分。由于丁香园的页面结构可能会有变化,你需要分析并定位到药品说明的位置。 ```python import requests from bs4 import BeautifulSoup def fetch_drug_manual(url): response = requests.get(url) soup = BeautifulSoup(response.text, 'lxml') # 假设药品说明在某个特定的div或section标签下 manual_area = soup.find('div', {'class': 'drug-manual'}) if manual_area: drug_manual = manual_area.get_text().strip() else: drug_manual = "找不到药品说明" return drug_manual # 示例: url = "https://drugs.dxy.cn/drug/d0655" # 替换为你想要查询的药物ID或URL manual = fetch_drug_manual(url) print("药品说明:", manual) ``` **注意**: - 在实际操作中,你需要遵守丁香园的robots.txt规则和使用条款,确保你的爬虫活动不会对服务器造成过大的负担或侵犯隐私。 - 药品数据可能受版权保护,未经允许直接抓取用于商业目的可能违法。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值