当前位置: 首页 > 编程笔记 >

基于Python正则表达式提取搜索结果中的站点地址

郑景胜
2023-03-14
本文向大家介绍基于Python正则表达式提取搜索结果中的站点地址,包括了基于Python正则表达式提取搜索结果中的站点地址的使用技巧和注意事项,需要的朋友参考一下

正则表达式对于Python来说并不是独有的,最近在把google搜索的结果中所有的站点地址导出,于是想到用python正则表达式提取搜索结果中的站点地址。

这其中涉及几个需要解决的问题:

1、获取搜索的结果文本

为了获得更多的地址,我使用了Google的高级搜索功能,每个页面显示100条结果。

获得显示的结果后,可以查看源码,并保持成文本文件就有了搜索的结果文本

2、分析如何提取站点信息

首先需要分析获取的页面,查看以怎样的方式可以提取出站点信息。

我使用IE8自带的开发工具(按F12就会弹出来)中的探查器功能查看自己要关心的内容有什么特殊的格式

从上图可以看出我需要的站点在标签<cite></cite>中,所以我使用正则表达式提取这其中的文本是否就可以呢?

3、编写正则表达式来获取站点地址

接下来的就是写表达式了,我使用Python3.2编写的,方便好用(~_~)

代码如下,先把搜索结果页面保持到e:/t3.txt中,在执行如下代码

import re
p = re.compile(r'<cite>([^<>\/].+?)</cite>')
f = open("e:/t3.txt", encoding='utf-8')
content = f.read()
print ("\n".join(p.findall(content)))

运行如下:


大家可以对照一下运行效果图,看看所有的站点地址是不是都给获取到了。

 类似资料:
  • 问题内容: 我需要找到与特定正则表达式匹配的所有软件包: 基本上,包的名字应该与启动,并有后话。例如,以下软件包应匹配: 我可以做,但是有很多我不感兴趣的软件包。 是否提供通过正则表达式查找软件包的方法?或者,我应该只是通过管道传递结果来过滤掉无关的包? 此外,可能是一个的“交集” ,并有助于太。 问题答案: alecxe,我相信这是您要寻找的一线客。 如下面评论中铬酸盐所建议的那样,您可以根据需

  • 你好,我的golang中有以下代码: 请看一下: 我在数据库中有一个名为“斯瓦蒂”和姓“沙玛”的记录。当我搜索“swati”时,它会正常工作,同样,当我搜索到“sharma”时也会正常工作。 问题是当我搜索“swati sharma”时,它没有返回任何结果。谁能告诉我怎样才能达到这个产量?

  • 问题内容: 我正在使用HashMap构建同义词库来存储同义词。 我正在尝试根据正则表达式搜索单词:该方法将必须将字符串作为参数并返回结果数组。这是我的第一个方法: 现在,这不符合我的预期(或者我使用的正则表达式不正确)。如果我在哈希图中具有以下键: 然后打电话或我得到。 我如何使这项工作按预期进行? 是否有比HashMap更好的数据结构来保留同义词库所需的类似数据?(仅出于好奇,对于此任务,我们被

  • 问题内容: 我需要在给定正则表达式的字符串中找到所有匹配项。我一直在这样做,直到遇到一个案例,它没有达到我的预期。例如: 在这种情况下,返回我需要的内容(最长的匹配项),但是行为却有所不同,尽管文档暗示它应该是相同的: 匹配所有出现的模式,而不仅仅是第一个。 为什么行为不同? 如何获得with (或其他方式)的结果? 问题答案: 好的,我从文档中查看发生了什么…… 如果该模式中存在一个或多个组,则

  • 我的正则律很糟糕。我想建立一个智能搜索,在那里我可以给搜索引擎提示在哪个属性上搜索什么。 类似这样: 搜索输入:位置:伦敦 - 搜索输入:位置:纽约伦敦 - 搜索输入:位置:伦敦标签:栏 - - 搜索输入:地点:伦敦,纽约标签:酒吧,俱乐部 - - 我想知道正则表达式应该如何解析这样的用户输入?

  • 我有: 使用正则表达式我想搜索并返回: