selenium3 + python - page_source页面源码

前言:

有时候通过元素的属性的查找页面上的某个元素,可能不太好找,这时候可以从源码中爬出想要的信息。selenium的page_source方法可以获取到页面源码。

本次以博客园为例,先爬取页面源码,通过re正则表达式爬取出url,再进行筛选出http 协议的 url -- 用if做判断。

源码整理如下

from selenium import webdriverimport re

driver = webdriver.Chrome()driver.get("https://www.cnblogs.com/Teachertao/")page = driver.page_source# print(page)

# "非贪婪匹配,re.S(‘.‘匹配字符,包括换行符)"url_list = re.findall(‘href=\"(.*?)\"‘, page)#url_list = re.findall(‘href=\"(.*?)\"‘, page,re.S)url_all = []for url in url_list:    if "http" in url:        print(url)        url_all.append(url)#打印出页面urlprint(url_all)

原文地址:https://www.cnblogs.com/Teachertao/p/10989353.html

时间: 2024-10-10 00:59:13

selenium3 + python - page_source页面源码的相关文章

Selenium2+python自动化37-爬页面源码(page_source)

前言 有时候通过元素的属性的查找页面上的某个元素,可能不太好找,这时候可以从源码中爬出想要的信息.selenium的page_source方法可以获取到页面源码. selenium的page_source方法很少有人用到,小编最近看api不小心发现这个方法,于是突发奇想,这里结合python的re模块用正则表达式爬出页面上所有的url地址,可以批量请求页面url地址,看是否存在404等异常 一.page_source 1.selenium的page_source方法可以直接返回页面源码 2.重新

Selenium2+python自动化37-爬页面源码(page_source)【转载】

前言 有时候通过元素的属性的查找页面上的某个元素,可能不太好找,这时候可以从源码中爬出想要的信息.selenium的page_source方法可以获取到页面源码. selenium的page_source方法很少有人用到,小编最近看api不小心发现这个方法,于是突发奇想,这里结合python的re模块用正则表达式爬出页面上所有的url地址,可以批量请求页面url地址,看是否存在404等异常 一.page_source 1.selenium的page_source方法可以直接返回页面源码 2.重新

UI自动化之特殊处理四(获取元素属性\爬取页面源码\常用断言)

获取元素属性\爬取页面源码\常用断言,最终目的都是为了验证我们实际结果是否等于预期结果 目录 1.获取元素属性 2.爬取页面源码 3.常用断言 1.获取元素属性 获取title:driver.title() 获取元素文本:driver.find_XX().text 获取元素标签:driver.find_XX().tag_name 获取元素的其他属性的值:driver.find_XX().get_attribute("class") 获取class属性的值 获取文本框输入的值:drive

python爬虫爬取页面源码在本页面展示

python爬虫在爬取网页内容时,需要将内容连同内容格式一同爬取过来,然后在自己的web页面中显示,自己的web页面为django框架 首先定义一个变量html,变量值为一段HTML代码 >>> print(html) <div id=1>   my <br>   name <br> is   JAY <br> </div> ,我们现在要取div里面的内容,在自己的web页面中显示,空格和换行符等都以HTML代码的形式抓取.最终

访问微信页面,查看页面源码

在url出找到  ‘redirect_uri’  和  ‘html’, 如图(基本是这两个没跑了,做个微信分享开发的基本一看就明白了) 复制这两个之间的被编码的字符串,打开开发者工具的console窗口 decodeURIComponent 一下 点击code出来的地址就ok啦

selenium3 + python - table定位

前言 在web页面中经常会遇到table表格,特别是后台操作页面比较常见.本篇详细讲解table表格如何定位. 一.认识table 1.首先看下table长什么样,如下图,这种网状表格的都是table 2.HTML源码如下: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Table 测试模板</title>

selenium3+python自动化10-基本操作2(单选框、复选框、table定位)

一.前言 本次总结是对之前内容的扩充selenium3+python自动化6-基本操作总结(键盘.鼠标.select下拉框) ,包含单元框和复选框操作.table定位等内容. 二.单选框(radiobox)和复选框(checkbox)操作 1.认识单选框和复选框 html代码如下: <html> <head> <title>单选和复选</title> </head> <body> </form> <h4>单选:

Python:SQLMap源码精读—start函数

源代码 1 def start(): 2 """ 3 This function calls a function that performs checks on both URL 4 stability and all GET, POST, Cookie and User-Agent parameters to 5 check if they are dynamic and SQL injection affected 6 """ 7 if n

Python解析器源码加密系列之(二):一次使用标准c的FILE*访问内存块的尝试

摘要:由于近期打算修改Python解释器以实现pyc文件的加密/解密,出于保密的要求,解密之后的数据只能放在内存中,不能写入到文件中.但是后续的解析pyc文件的代码又只能接受FILE*作为入参,所以就提出了一种把通过FILE*来访问内存的需求,下文是针对这个需求的几个方面的尝试及其结论. 以下尝试的前提是:Win7 + VS2010. 在vc中,FILE其实就是_iobuf,定义如下: struct _iobuf { char *_ptr; //文件输入的下一个位置 int _cnt; //当前