返回顶部
首页 > 资讯 > 后端开发 > Python >PyHacker编写URL批量采集器
  • 781
分享到

PyHacker编写URL批量采集器

2024-04-02 19:04:59 781人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录00x1:需要用到的模块00x2:选取搜索引擎00x3:分析需要采集的url00x4:搜索00x5:自动保存00x6:完整代码喜欢用python写脚本的小伙伴可以跟着一起写一写呀

喜欢用python写脚本的小伙伴可以跟着一起写一写呀。

编写环境:Python2.x

00x1:需要用到的模块

需要用到的模块如下:

import requests
import re

本文将用re正则进行讲解,如果你用Xpath也可以

00x2:选取搜索引擎

首先我们要选取搜索引擎(其他搜索引擎原理相同)

以bing为例:Cn.bing.com

首先分析bing翻页机制:

https://cn.bing.com/search?q=内容&first=0 第一页
Https://cn.bing.com/search?q=内容&first=10 第二页
https://cn.bing.com/search?q=内容&first=20 第三页

页数 = First*10

分析完毕,我们来请求看一下

def req():
    url = 'https://cn.bing.com/search?q=小陈&first=0'
    headers = {'User-Agent': 'Mozilla/5.0 (windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0'}
    req = requests.get(url,headers=headers)
    html = req.content
    print html

Ok,没毛病

00x3:分析需要采集的url

分析需要采集的url在哪个位置

得出正则:(.*?)

正则表达式学习:(百度搜:python 正则表达式)

def reurl():
    urlr = r'<cite>(.*?)</cite>'
    reurl = re.findall(urlr,html)
    print reurl

就在我请求第二页的时候发现了问题

可以看到请求内容和第一页一样,有某种验证机制

一般情况下验证机制,表示特定参数

经过多次测试,发现缺少 Cookie: _EDGE_V=1;

请求正常,大致已经完成

接下来只需要给关键词和页数变量就ok了

00x4:搜索

再搜索site:baidu.com 又出现了问题

于是修改正则为:

'target="_blank" href="(http.*?\..*?\..*?)" h="'

有很多我们不想要的结果,我们再来遍历下采集的urls

做一下处理

正则为:

(http[s]?://.*?)/

代码为:

def url():
    for url in urls:
        urlr = r'(http[s]?://.*?)/'
        url = re.findall(urlr,url)
        print url

print url 改为 print url[0] 再进行处理一下

可以看到下面还有重复的url,对url去重一下

def qc():#去重复
    for url in url_ok:
        if url in url_bing:
            continue
        url_bing.append(url)

00x5:自动保存

接下来我们要让他自动保存到url_bing.txt

with open('url_bing.txt','a+')as f:
    for url in url_bing:
        print url
        f.write(url+"\n")
    print "Save as url_bing.txt"

00x6:完整代码

 
#!/usr/bin/python
#-*- coding:utf-8 -*-
import requests
import re
urls = []
url_ok = []
url_bing=[]
def req(q,first):
    global html
    url = 'https://cn.bing.com/search?q=%s&first=%s'%(q,first)
    print url
    headers = {
        'Host':'cn.bing.com',
        'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWEBKit/537.36 (KHTML, like Gecko) Chrome/65.0.3314.0 Safari/537.36 SE 2.X MetaSr 1.0',
        'Cookie': '_EDGE_V=1;'
    }
    req = requests.get(url,headers=headers)
    html = req.content
def reurl():#正则匹配url
    urlr = r'target="_blank" href="(http.*?\..*?\..*?)" h="'
    reurl = re.findall(urlr,html)
    for url in reurl:
        if url not in urls:
            urls.append(url)
def url():#url二次处理
    for url in urls:
        urlr = r'(http[s]?://.*?)/'
        url = re.findall(urlr,url)
        url_ok.append(url[0])
def qc():#去重复
    for url in url_ok:
        if url in url_bing:
            continue
        url_bing.append(url)
if __name__ == '__main__':
    q = raw_input('\nkey:')
    page = input('page:')
    for first in range(0, page):
        req(q, first * 10)
        reurl()
    url()
    qc()
    with open('url_bing.txt','a+')as f:
        for url in url_bing:
            print url
            f.write(url+"\n")
        print "Save as url_bing.txt"

以上就是PyHacker编写URL批量采集器的详细内容,更多关于PyHacker批量采集URL的资料请关注编程网其它相关文章!

--结束END--

本文标题: PyHacker编写URL批量采集器

本文链接: https://lsjlt.com/news/148808.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • PyHacker编写URL批量采集器
    目录00x1:需要用到的模块00x2:选取搜索引擎00x3:分析需要采集的url00x4:搜索00x5:自动保存00x6:完整代码喜欢用Python写脚本的小伙伴可以跟着一起写一写呀...
    99+
    2024-04-02
  • 如何编写shell脚本实现批量采集爱站关键词库
    这篇文章主要介绍“如何编写shell脚本实现批量采集爱站关键词库”,在日常操作中,相信很多人在如何编写shell脚本实现批量采集爱站关键词库问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何编写shell脚本...
    99+
    2023-06-09
  • vps批量采购 vps服务器批量
    vps批量采购 vps服务器批量远程桌面是微软公司为了便于网络管理员管理维护服务器推出的一项服务。从windows 2000 server版本开始引入,网络管理员时候远程桌面连接器连接到网络任意一台开启了远程桌面控制功能的计算机上,就像是自...
    99+
    2023-06-03
  • vps批量采购 批量服务器管理
    vps批量采购 批量服务器管理远程桌面是微软公司为了便于网络管理员管理维护服务器推出的一项服务。从windows 2000 server版本开始引入,网络管理员时候远程桌面连接器连接到网络任意一台开启了远程桌面控制功能的计算机上,就像是自己...
    99+
    2023-06-03
  • PyHacker实现网站后台扫描器编写指南
    目录00x1:模块00x2:请求基本代码00x3:设置00x4:200页面处理00x5:保存结果0x06:完整代码包括如何处理假的200页面/404智能判断等 喜欢用Pyt...
    99+
    2024-04-02
  • Python如何实现批量采集商品数据
    这篇文章给大家分享的是有关Python如何实现批量采集商品数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。本次目的python批量采集某商品数据知识点requests 发送请求re 解析网页数据json 类型数...
    99+
    2023-06-29
  • shell脚本实现批量采集爱站关键词库
    shell批量采集爱站关键词库,心血来潮写着玩的,还不完善,先放出来,后期慢慢更新,功能虽然简单,同类工具也很多现成的,但毕竟是自己写出来的工具,感觉还是很不一样滴! for i in $(seq 1 5...
    99+
    2022-06-04
    词库 批量 脚本
  • Python实现IP代理批量采集的示例代码
    目录开发环境 模块使用 基本流程(思路)一. 数据来源分析二. 代码实现步骤过程代码开发环境  python 3.8 pycharm 模块使用 ...
    99+
    2024-04-02
  • Python怎么批量采集京东商品数据流程
    这篇文章主要介绍Python怎么批量采集京东商品数据流程,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!准备工作驱动安装实现案例之前,我们要先安装一个谷歌驱动,因为我们是使用selenium 操控谷歌驱动,然后操控浏览...
    99+
    2023-06-28
  • PyHacker编写指南引用Nmap模块实现端口扫描器
    目录编写:调试扫描:方法扫描端口输出状态:引用Nmap库实现扫描功能,本节课比较简单一看就会。 编写环境:Python2.x 编写: 首先安装Nmap程序,并添加环境变量 pip i...
    99+
    2024-04-02
  • Python实现批量采集商品数据的示例详解
    目录本次目的知识点开发环境代码本次目的 python批量采集某商品数据 知识点 requests 发送请求 re 解析网页数据 json 类型数据提取 csv 表格数据保存 开发环境...
    99+
    2024-04-02
  • 淘宝新店采集软件 实时采集实时更新 每天提取上万采集器量
    1 、选择要提取的开店日期;   2 、淘宝新店实时云采集,不需要自己采集以及切换 IP   3 、一键自动提取淘宝最新开店铺,可选择指定开店日期掌柜旺旺,软件判断旺旺是否在线   4 、可选择本地...
    99+
    2024-04-02
  • 详解Python如何批量采集京东商品数据流程
    目录准备工作驱动安装模块使用与介绍流程解析完整代码效果展示准备工作 驱动安装 实现案例之前,我们要先安装一个谷歌驱动,因为我们是使用selenium 操控谷歌驱动,然后操控浏览器实现...
    99+
    2024-04-02
  • MySQL8批量修改字符集脚本怎么写
    这篇“MySQL8批量修改字符集脚本怎么写”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“M...
    99+
    2023-03-31
    mysql
  • mongodb集群批量写入不成功如何解决
    要解决MongoDB集群批量写入不成功的问题,可以尝试以下几个步骤:1. 检查集群配置:确保MongoDB集群的配置正确无误。集群配...
    99+
    2023-08-31
    mongodb
  • POC漏洞批量验证程序Python脚本编写
    目录编写目的需求分析实现过程Main函数获取目标批量请求验证加载POC多线程类urlParsegetProxyrandomHeaders输出结果其他全局变量命令行读取参数poc详情显...
    99+
    2024-04-02
  • 如何编写图片批量压缩大小脚本
    本篇内容主要讲解“如何编写图片批量压缩大小脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何编写图片批量压缩大小脚本”吧!压缩图片时用的一个脚本,先安装下#ImageMagick#代码如下:...
    99+
    2023-06-09
  • 如何编写Shell脚本批量添加扩展名
    本篇内容介绍了“如何编写Shell脚本批量添加扩展名”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!方法1:代码如下:for file in&...
    99+
    2023-06-09
  • Python编写漏洞验证脚本批量测试繁琐漏洞
    目录前言requests模块使用技巧取消重定向SSL证书验证代理保持cookie验证结果单线程poc脚本使用多线程颜色标记添加进度条多线程poc脚本前言 我们实战经常会遇到以下几个问...
    99+
    2024-04-02
  • 如何编写Shell脚本批量修改文件后缀名代码
    本篇内容介绍了“如何编写Shell脚本批量修改文件后缀名代码”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码如下:#!/bin/basho...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作