首页 > 其他分享 >记录指定个数的成语

记录指定个数的成语

时间:2024-02-28 18:46:23浏览次数:21  
标签:__ url text 个数 指定 re print import 成语

# !/usr/bin/env python
# -*- coding:utf-8 -*-

"""
# File       : chengyu-001.py
# Time       :2024/1/16 11:55
# Author     :lrtao2010
# version    :python 3.10.1
# Description:记录指定个数的成语
"""

#导入模块
import requests #下载网页
import re
import time
import random


def spider(url):
    # 自定义请求头
    my_headers = {
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
        #'Accept-Encoding': 'gzip, deflate, br',
        'Accept-Language': 'zh-CN,zh;q=0.9',
        'Cache-Control': 'no-cache',
        'Host': 'XXXX.com',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
    }
    resp = requests.get(url,headers=my_headers,timeout=(30,30))
    #print(resp.text)
    obj = re.compile(r'<a href=.*? target="_blank"><span>(?P<PIN>.*?)</span>(?P<CI>.*?)</a>',re.S)  # re.S可以让re匹配到换行符
    result = obj.finditer(resp.text)
    for item in result:
        dic = item.groupdict()
        #print("|".join(dic.values()))
        with open("./shuju/chengyu-4.txt", 'a+', encoding='utf-8')as s_f:
            s_f.write("|".join(dic.values()) + "\n")




#主程序,注意修改英文字母数量

if __name__ == '__main__':
    # url = f"https://XXXX.com/zishu_4.html"
    # print(url)
    # spider(url)
    # time.sleep(random.randint(2, 5))
    for page in range(13,21):
        url = f"https://XXXX.com/zishu_4_p{page}.html"
        print(url)
        spider(url)
        time.sleep(random.randint(2, 5))

 

标签:__,url,text,个数,指定,re,print,import,成语
From: https://www.cnblogs.com/lrtao2010/p/18041423

相关文章

  • Mybatis-Plus接入多个数据源
    导入依赖<!--mybatis-plus--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.2.0</version></dependency>编辑properties#db1spring.d......
  • 使用fsutil创建指定大小文件
    以下命令将在 D:\projects\test目录下创建大小为4KB的文件 4096.txtfsutilfilecreatenewD:\projects\test\4096.txt4096需要注意的是,通过fsutil指令生成的文件是空文件。指定内容生成指定大小文件以下命令将在D:\projects\test目录下创建大小为2KB的文件2k......
  • 代码随想录 第六天 哈希表理论基础 ● 242.有效的字母异位词 ● 349. 两个数组的交
    LeetCode:242.有效的字母异位词-力扣(LeetCode)思路:既然只判断两个字符串的字母,就一个++,一个--,最后如果二十六个字母都是零,说明两个字符串相等。反思: //charat(i)是返回字符串索引,所以s.charAt(i)-'a'实际上是获取字符串s中第i个字符相对于字母'a'的偏移量。......
  • NLog条件配置——实现将包含某个特定字符串日志写入指定文件
    需求产生缘由在开发中为了了解程序在运行的内存状态并记录下来,以便出问题时判断是不是与内存相关。于是实时采集了开发程序需要的内存信息。但采集的内存信息在存储时,以NLog中的Trace级别来存储的话,会与程序其它Trace级别的日志都记录在相同的TraceLog文件下,这会导致在查看内存......
  • 聊聊maven指定version区间的妙用
    前言在我们开发微服务项目的过程中,难免会依赖各种jar,开发环境可能引用1.0.0-SNAPSHOT,而到了正式环境,则需要引用1.0.0。之前我们的做法是通过pom配置profile来达到不同环境,使用不同的版本。形如下<profiles><!--开发环境--><profile><properti......
  • linux空磁盘挂载到指定目录操作步骤
    linux磁盘挂载1、检查硬盘分区情况:fdisk-l 或 lsblk如图所示:/dev/sdb磁盘还未分区2、给新硬盘添加分区执行fdisk/dev/sdb按照下面步骤依次输入指令3、格式化分区类型mkfs.xfs/dev/sdb14、查看格式化后的所有文件系统类型blkid5、将新建分区挂载到指定目录m......
  • Excel表格设置指定字变色的方法(查了好多都是包含指定文字的行变色)
    原文链接:https://jingyan.baidu.com/article/f25ef2547baff7092d1b8267.html1、选中目标列,点击条件格式2、选择新建规则3、选择只为包含以下内容的单元格设置格式,在特定文本选项下输入文字,点击格式。 4、选择文字颜色  5、点确定 ......
  • C++ GDAL用CreateCopy()新建栅格并修改波段的个数
      本文介绍基于C++语言GDAL库,为CreateCopy()函数创建的栅格图像添加更多波段的方法。  在C++语言的GDAL库中,我们可以基于CreateCopy()函数与Create()函数创建新的栅格图像文件。其中,CreateCopy()函数需要基于一个已有的栅格图像文件作为模板,将模板文件的各项属性信息(例如空间......
  • java实现scp功能实现目录下所有文件拷贝至指定服务器
    1、添加pom依赖<dependency><groupId>com.jcraft</groupId><artifactId>jsch</artifactId><version>0.1.55</version></dependency>2、示例代码publicstaticvoidmain(String[]args)throwsIOException{try{......
  • 无法加载DLL“xxxx”:找不到指定的模块
    以前的一个c#项目,今天运行的时候突然发现调用DLL时出现了下面的错误。心中很诧异,明明以前能用的,今天怎么报错了。代码没有修改,也不存在DLL路径错误的问题。后来看到有网友说用depends这个软件可以对DLL文件进行分析,就拿来一试。果然找到了问题。是以前编译器调用的库和现在编......