python导入os模块后导致文件夹内的图片失效,恢复旧版本代码后也无法使用了

本人初学者,在使用pyautogui做一个可以在知乎自动复制评论并识别是否包含垃圾词汇的脚本
基本原理是:
提前截图知乎评论区一些固定的按钮,然后利用pyautogui来进行定位坐标
然后现在想要尝试利用os库来让脚本读取相对路径的文件
于是开始一边网上学一边测试
但遇到一个很奇怪的问题,我在导入os模块后,我提前截图好的图片,就无法使用pyautogui进行匹配了,甚至我恢复修改前的代码,也不能正常匹配了。
一定要重新截图保存到文件夹里,然后才能正常匹配。
想问问os模块是有什么特性吗?为啥导入os模块后会让我原来的图片失效了
原本可执行的代码如下:

import pyautogui
import time
import pyperclip
import keyboard

# 按p开始启动脚本
keyboard.wait('p')
# 打开浏览器

pyautogui.click(x=131, y=1055)
time.sleep(1)
while 1 == 1:

    # 输入k退出循环,还没找到比较好的方法或函数来随时停止程序
    if keyboard.is_pressed('k'):
        break
    # 寻找切换最新或默认,在屏幕中的坐标位置,并且进行点击
    panduan = pyautogui.locateCenterOnScreen(r'D:\python\自动删评项目\测试截图位置\zuixin.jpg')
    if panduan is None:
        panduan = pyautogui.locateCenterOnScreen(r'D:\python\自动删评项目\测试截图位置\moren.jpg')
        x1, y1 = panduan
        pyautogui.click(x1, y1, duration = 0.5)
        time.sleep(1)
    x1, y1 = panduan
    # 定位删除按钮所在位置,用于计算复制终点
    # 计算复制内容的初始点
    scx,scy = pyautogui.locateCenterOnScreen(r'D:\python\自动删评项目\测试截图位置\shanchu.jpg')
    x2 = x1 - 582
    y2 = y1 + 135
    scx2 = scx + 493
    scy2 = scy - 23
    # 执行复制的动作,并转为字符串,并记录时间
    for i in range(2):
        pyautogui.moveTo(x2, y2, duration = 1)
    pyautogui.dragTo(scx2, scy2, 1, button='left')
    pyautogui.hotkey('ctrl', 'c')
    neirong = pyperclip.paste()
    now = time.localtime()
    nowt = time.strftime("%Y-%m-%d-%H_%M_%S", now)
    # 读取TXT里定义的敏感关键字,包含关键字的是需要删除的评论
    f = open("D:\python\自动删评项目\测试用的读取关键字文档.txt")
    while 1:
        lines = f.readlines()
        if not lines:
            break
        for line in lines:
            line = line.strip()
            if line in neirong:
                zhixing = 1
                break
            else:
                zhixing = 0
        print(zhixing)
        #f.close()

本来这是一段可以正常执行的代码,但只要我导入os模块后(如下部分代码),就不能执行了,哪怕我恢复到如上代码,也会导致
panduan = pyautogui.locateCenterOnScreen(r'D:\python\自动删评项目\测试截图位置\zuixin.jpg') 这一句无法成功返回坐标,一定得重新截图保存这张图片,才能跑通。(包括后面,只要是这个文件夹里用来匹配位置的图片,全都失效,全部得重新截图)

如下代码,即我修改后的代码

import pyautogui
import time
import pyperclip
import keyboard
import os

# 按p开始启动脚本
keyboard.wait('p')
# 打开浏览器

pyautogui.click(x=131, y=1055)
time.sleep(1)
while 1 == 1:

    # 输入k退出循环,还没找到比较好的方法或函数来随时停止程序
    if keyboard.is_pressed('k'):
        break
    # 寻找切换最新或默认,在屏幕中的坐标位置,并且进行点击
    panduan = pyautogui.locateCenterOnScreen(r'D:\python\自动删评项目\测试截图位置\zuixin.jpg')
    if panduan is None:
        panduan = pyautogui.locateCenterOnScreen(r'D:\python\自动删评项目\测试截图位置\moren.jpg')
        x1, y1 = panduan
        pyautogui.click(x1, y1, duration = 0.5)
        time.sleep(1)
    x1, y1 = panduan
    # 定位删除按钮所在位置,用于计算复制终点
    # 计算复制内容的初始点
    scx,scy = pyautogui.locateCenterOnScreen(r'D:\python\自动删评项目\测试截图位置\shanchu.jpg')
    x2 = x1 - 582
    y2 = y1 + 135
    scx2 = scx + 493
    scy2 = scy - 23
    # 执行复制的动作,并转为字符串,并记录时间
    for i in range(2):
        pyautogui.moveTo(x2, y2, duration = 1)
    pyautogui.dragTo(scx2, scy2, 1, button='left')
    pyautogui.hotkey('ctrl', 'c')
    neirong = pyperclip.paste()
    now = time.localtime()
    nowt = time.strftime("%Y-%m-%d-%H_%M_%S", now)
    # 读取TXT里定义的敏感关键字,包含关键字的是需要删除的评论
    file1 = os.path.abspath("测试用的读取关键字文档.txt")
    with open(file1) as f:
    # f = open("D:\python\自动删评项目\测试用的读取关键字文档.txt")
        while 1:
            lines = f.readlines()
            if not lines:
                break
            for line in lines:
                line = line.strip()
                if line in neirong:
                    zhixing = 1
                    break
                else:
                    zhixing = 0
                print(zhixing)
                #f.close()

有人愿意抽空解答一下嘛?为啥我将代码修改后,哪怕恢复了,图片也得重新截图才能重新跑起来呢?

这个识别与图片的大小像素有关,你可以将网页最大化,然后截图试试。如果要提高识别,可以用open cv的图像特征提取,然后定位,由pyautogui根据定位点击