静态网页爬取,完全小白向(附源码)

静态网页的处理大致可以分为几个步骤
导入模块、发送请求、解析数据、处理数据

导入模块

这里我们需要导入request库和etree
前者用来获取请求,后者用来解析

import requests
from lxml import etree

发送请求

首先写你要爬取网站的url

url = "http://www.a-hospital.com/w/%E7%96%BE%E7%97%85"

然后写请求头

headers = {
'User-Agent': ''
}

请求头这里可以打开你的网站,F12打开“网络”,在其中随便找到一个User-Agent即可
在这里插入图片描述

然后获取网页

res = requests.get(url=url,headers=headers)

解析数据

得到网页之后,使用etree中的HTML解析
然后找到你需要的数据位置,右键复制XPath
在这里插入图片描述

html = etree.HTML(res.text)
diss_liss = html.xpath('/html/body/div[3]/div[2]/h4')

这里需要注意,有的网站复制时会给你加一个“/tbody”,这时你的获取列表就会是空的,我们在xpath中手动删除tbody即可

处理数据

按照你想要的方式读取即可
由于之前的步骤爬下的是列表,基本都要搭配使用for语句进行处理

for lis in liss:
    lis_ = lis.xpath('./ul/li')
    for li in lis_:
        data = li[0].text
        print(data)

运行结果

在这里插入图片描述

源码

import requests
from lxml import etree
url = "http://www.a-hospital.com/w/%E6%B6%88%E5%8C%96%E5%86%85%E7%A7%91%E7%96%BE%E7%97%85"

headers = {
'User-Agent': '
}

res = requests.get(url=url,headers=headers)

html = etree.HTML(res.text)
liss = html.xpath('//*[@id="bodyContent"]/table[2]/tr/td')
for lis in liss:
    lis_ = lis.xpath('./ul/li')
    for li in lis_:
        data = li[0].text
        print(data)
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值