day11 Xpath

news/2025/3/11 1:17:33/文章来源:https://www.cnblogs.com/FGOO/p/18237276

网页分析有优势,全称XML Path Language一种小型的查询语言
优点:可在XML中查询信息
支持HTML的查询
通过元素和属性进行导航
PY使用需要安装库:安装lxml
selector = etree.HTML(html_doc)//实例化对象,实际上就是一个Element类,通过



逻辑运算:
//div[@id and @class]查找同时拥有的元素
//title | //price # 选取文档中的所有title和price元素,'|'两边必须是完整xpath路径
属性查询:
单引号和双引号//
练习
读 ,存,提取

文件句柄:目录文件获取//在html文件里面查找豆瓣top250.html,模式为mode=r 读
file = open("html文件/豆瓣top250.html",mode="r")
光标移动:读文件个数或者数字的时候,第一个读取和第二个读取是连接上的
循环高效获取数据
for line in file:\每次循环file的数据都会赋值给line,在打印出来 内存的垃圾回收
print(line)\缺点是分次打印,数据是分段的,虽然可以达到效果
写文件的完整操作:保存爬虫数据到文件上面
file = open("豆瓣优秀电影.json,mode=''w") //模式写,创建一个json的文件 a追加
import json //引入
infosStr = json.dumps(infos,ensure_ascii=False)//ascii=False 不转码,直接输出格式
file.write(infosStr)//写入文件,先清空后但是会覆盖
file.close()//经常需要关闭文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/721405.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智慧社区

智慧社区 # 智慧社区-小程序-欢迎页面-首页-轮播图-公告-信息采集,社区活动,人脸检测,语音识别,心率检测,积分商城-信息采集页面-采集人数-采集详情页面-采集统计页面-人脸检测页面-语音识别页面-积分商城页面-活动-活动列表-报名活动-加载更多-公告-公告列表-我的-信息展…

MainWindows移动View文件夹和使用Window.DataContext单例绑定需要修改的地方

项目结构移动文件夹后需要修改的三个地方 1、App.xaml2、MainWindow.xaml3、MainWindow.xaml.cs单例绑定需要修改的地方 MainWindow.xaml

ClickHouse内幕(2)基础数据结构

ClickHouse以性能好被大家所熟知,而一个数据库的性能优化是一个庞大的系统性工程。本文着眼于ClickHouse内部的基础数据结构,以揭露ClickHouse性能优化的冰山一角。 在软件工程中并不是所有的执行路径都需要优化,只有关键执行路径才需要花费大力气进行优化。对于数据库领域来…

PyQT5之菜单栏和工具栏

from PyQt5 import QtWidgets from PyQt5 import QtCore, QtGui import sys import cv2class ButtonPanel(QtWidgets.QWidget):def __init__(self, *args, **kwargs):super().__init__(*args, **kwargs)select_btn = QtWidgets.QPushButton("图像选择")self.path_lab…

CH32系列MCU SysTick使用与计算

1、关于SysTick CH32F103/203: CH32F103/203为Cortex-M3内核,SysTick是一个24位的向下递减计数器,计数器每计数一次的时间可配置为1/时基。当SysTick重装载数寄存器的值递减到0的时候,产生一次中断。CH32F系列MCU SysTick由4个寄存器控制,具体如下图。具体介绍可参考《CM3…

在线安装 qt 下载安装慢以及安装报错无法下载存档 not found——解决方式

一、下载安装QT的在线下载器可以在 QT 官网下载开源的安装包(需要登陆) 或者在各大大学的镜像站中下,比如:mirrors.nju.edu.cn(可选)解压出下载的压缩包,拿到 qt-unified-windows-x64-online.exe/dmg/run 本体在终端中,输入 ./包名 --mirror https://mirror.nju.edu.…

【Linux驱动设备开发详解】11.内存与I/O访问

1.内存管理单元 高性能处理器一般会提供一个内存管理单元(MMU),用于辅助操作系统尽心修改内存管理,提供虚拟地址和物理地址的映射、内存访问权限保护和Cache缓存控制等硬件支持。 1.1MMU基本概念 1.1.1 概念含义 1.TLB(Translation Lookaside Buffer): 旁路转换缓存,TLB是MMU…

OOP第二次博客作业

一、前言 又做了三次PTA练习,前一次还是之前三次的迭代训练,后面两次又是一个新的模型。//终于是换模型了//题目类型都差不多,更注重类与类之间的联系,增加的内容就是对类的设计更复杂了,类的种类也更多了。但总体的逻辑不变。 二、分析第四次判题程序 (1)设计与分析 本…

HTTP Status 400 – Bad Request

1. 问题2. 原因org.apache.juli.logging.DirectJDKLog:log|Error parsing HTTP request headerNote: further occurrences of HTTP header parsing errors will be logged at DEBUG level.java.lang.IllegalArgumentException: Request header is too largeat org.apache.coyot…

使用jmeter,响应体response body中有两个同名的cookies时,如何获取第二个cookie进行跨线程组使用

如图两个同名cookie:.AspNetCore.Cookies正则表达式提取器 引用名称:loginCookie 正则表达式:Set-Cookie: (.AspNetCore.Cookies=.*?;) 模板:$1$(确保正确匹配到第二个 .AspNetCore.Cookies) 匹配数字2beanshell后置处理程序 ${__setProperty(loginCookie,${loginCookie…

IOS 手机 new Date 之后显示的是NaN-NaN-NaN

上周同事让我改一个入参,让用后端返回的时间作为入参,获取视频内容。我习惯成自然,利用了原来的时间格式化函数。函数里面有一个new Date()如下面截图: 部分IOS机型里面,2024-06-07里面的-他识别不出来,他会识别/,所以导致出现NaN-NaN-NaN。 这样的话,还是不要这样直接…

[中文参数] AGFA027R31C2I3V、AGFA027R31C2I3E、AGFA027R31C2E3E、AGFA027R31C2E4X面向互联世界的可编程逻辑产品

Agilex™ 7 F 系列采用Intel 10-nm SuperFin 工艺技术打造而成,提供高达 58 Gbps 的收发器速率、支持多种精度定点和浮点运算的高级 DSP 块,以及高性能的加密块。Agilex™ FPGA 产品组合包含一系列产品,可充分满足每一个技术领域(从边缘到嵌入式系统,再到通信和数据中心)…