实操续:HTML基本结构,以及数据来源,网页获取

接着上篇,继续讲解HTML结构
老司机,带你用30行代码爬取高清美女写真,附安装包+源码

实操续:爬虫基础知识,浏览器最基本的配置方法

今天继续讲解HTML结构

在这里插入图片描述

一、 爬虫网页内容获取


def down_image( page ):
    print(f'页面{page},开始')
    t1 = time.time()
    # page页面跳转
    url = f'https://www.36992.com/girls/list-{page}.html'
    resp = requests.get(url)
resp.encoding = utf8
print(resp.text)
down_image(0)

HTML基础

在这里插入图片描述

1.接下来,我们按照要求,新建一个html文件。

2.用记事本编辑,把刚刚Python打印的内容复制进来,保存

3.直接双击html文件,就可以用默认浏览器打开

二、 标签

1>种类

按爬虫区分,大致分为3类

超链接a标签,为了获取详情页资料

从a标签的href中取值
在这里插入图片描述

媒体标签,img,video,auto,为了下载媒体资源

从标签属性src中取值
在这里插入图片描述

文本标签,为了获取产品信息

直接从文本内容text获取,配合正则表达式提取文本

2>属性

这里只讲和爬虫相关的公共属性

1)节点,根据位置,定位元素,默认根节点/父节点/

1 .父节点
2 .子节点
3 .兄弟节点

下篇再讲XPath高级语法

2)id

1 .id 属性规定 HTML 元素的唯一的 id。
2 .id 在 HTML 文档中必须是唯一的。
3 .id 属性可用作链接锚(link anchor),通过 JavaScript(HTML DOM)或通过 CSS 为带有指定 id 的元素改变或添加样式。

>>>如果父,子,兄弟节点或者自身有id值,用id定位很方便
 node_list = tree.xpath("//*[@id='id值']")

3)class

1 .在元素开始标签里添加,格式class=“name”,
2 .class并不是唯一的,可以在头部元素里style标签中定义,这样可以让class在多个标签中使用,
3 .如果要指定多个类别那就将类别名字之间用空格分开,格式class=“first second”,
4 .类别名可以两个以上,class尽量用来添加样式,
5 .一个 class 名称可以分配给页 面中任意数量的元素,并且一个元素可以有 一个以上的 class。通常,它是为CSS做准备的,定义一块class name,然后在CSS里改写这块Class的属性,设置不同的样式,例如设置字体大小,背景,行间距等等。

>>>用class定位的时候,获取到的通常不止一个元素,可以打印一下文本,看看定位到了哪个元素
 node_list = tree.xpath("//*[@class='class值']")

三、接下来是进阶篇内容,这里只简单提一下

事件

1 .网页,刷到底部更新
2 .点击按钮跳转页面

这类情况网页F12调试已经起不到作用了,需要专业抓包工具:fiddler charles

样式

1 .标签隐藏,display=none
明明F12调试看得到,网页不显示

删除这条属性就可以了

四、引入,为了帮助我们更好的还原网页

样式引入

在这里插入图片描述

脚本引入

在这里插入图片描述

媒体引入

上面已经写过了

结语

敲重点,理解自己想要的数据去哪找!!!

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值