zoukankan      html  css  js  c++  java
  • Python 每日一练(4)

    引言

    • 今天继续是python每日一练的几个专题,主要涵盖简单的敏感词识别以及图片爬虫

    敏感词识别

    • 这个敏感词的识别写的感觉比较简单,总的概括之后感觉功能可以简略成if filter_words in xxx,即一个简单的匹配
    • 不过这次练习又学到一句比较好的语句,之前我构造类似敏感此种这种列表时,通常的操作都是先将文本复制进notepad++,然后手动修饰成符合的列表样式
      但现在我们可以这样做,就能简单的完成这个操作了。
    with open('C:/Users/xxx/Desktop/filter_words.txt','r',encoding='utf-8') as f:
        filter_words = [line.rstrip() for line in f] #处理那些一行就只有一个数据的文件时,就可以这样将每一行右侧空白符删除后写入列表
    
    • 这次练习代码示例:
    # -*- coding:utf-8 -*-
    # Author:Konmu
    # 第 0011 题: 敏感词文本文件 filtered_words.txt,里面的内容为以下内容,
    # 当用户输入敏感词语时,则打印出 Freedom,否则打印出 Human Rights。
    # 第 0012 题: 敏感词文本文件 filtered_words.txt,里面的内容 和 0011题一样,
    #当用户输入敏感词语,则用 星号 * 替换,
    # 例如当用户输入「北京是个好城市」,则变成「**是个好城市」。
    
    with open('C:/Users/xxx/Desktop/filter_words.txt','r',encoding='utf-8') as f:
        filter_words = [line.rstrip() for line in f]
    
    def client_Input():
        input_word = input("please input what you want to say:")
        for i in filter_words:
            if i in input_word:
                print("Freedom")
                new_word = input_word.replace(i,'*'*len(i))
                return(new_word)
            return('Human Rights')
    
    if __name__ == "__main__":
        print(client_Input())
    
    • 最终效果
      python

    图片爬虫

    • 这个练习可以说是宅男福利了,手动滑稽(/ω\)
    • 先看一下最终效果
      python
    • 不得不说,好久不写图片类型的爬虫了,这次练习才发现有好多地方又忘了,看来还是要多加练习
    • 思路分析:大体的流程就是爬虫常规写法了,先将整个网站的源码下载下来,然后在匹配图片链接,最后下载即可
    • 代码示例如下:
    # -*- coding:utf-8 -*-
    # Author:Konmu
    # 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-)
    
    import requests
    import re
    
    url='https://tieba.baidu.com/p/2166231880?red_tag=0872956249'
    session=requests.session()
    #context=ssl._create_unverified_context()
    html=session.get(url).content.decode('utf-8')
    
    pattern=r'<img pic_type="0" class="BDE_Image" src=(.*?) .*?>'
    
    img_url=re.findall(pattern,html)
    #print(img_url)
    x=0
    
    for i in img_url:
        i=i.replace('"','')
        photo = requests.get(i)
        with open('D:/py_tu/output{}.jpg'.format(x),'ab') as f:
            f.write(photo.content)
            x+=1
            print("图片开始下载,注意查看文件夹")
    
    • 注:一开始我是想用urllib.requesturlretrieve()来下载图片的,但是发现urllib无法处理https,而且编译安装python之前没有编译安装类似于openssl这样的SSL库,所以导致python不支持SSL,网上大多是针对Linux的解决方法,对于windows我尝试按照使用pythonssl库但是也没能解决,遂选择了直接保存文件,即上述代码中示例
  • 相关阅读:
    5_添加购物车 View+Con
    5_添加购物车 B+M
    5_添加购物车 D
    登录注册V
    bootstrap-标题
    h5整理--详解css的相对定位和绝对定位
    各大门户网站的css初始化代码
    九月二十八JS验证
    js函数和运算符
    4.1原始表达式 9/16
  • 原文地址:https://www.cnblogs.com/Konmu/p/12539385.html
Copyright © 2011-2022 走看看