为什么 python 请求在降低参数方面有问题

Why python requests have problem with lowering arguments

我在 python 中获取系统参数,在添加 .lower()

后传递它们时遇到问题

我尝试了一些不同的解决方案,例如

list_join = ''.join(arg_list_split).lower()

list_join = str(arg_list_split).lower()

似乎 post 请求无法识别我的线路程序调用中的一些大写字母,

如果我像 python movie_find.py war spartacus = 一切正常 但是当我调用 python movie_find.py war Spartacus = 看起来它停止工作时,这意味着字符串参数没有正确传递给 post请求

#!/usr/bin/env python3
import requests, re, sys
from bs4 import BeautifulSoup as bs

url = 'https://alltube.tv/szukaj'

arg_list_split = sys.argv[1:]

list_join = ' '.join(arg_list_split)

s = requests.Session()
response = s.post(url, data={'search' : list_join})
soup = bs(response.content, 'html.parser')

for link in soup.findAll('a', href=re.compile('serial')):
    final_link = link['href']
    if all(i in final_link for i in arg_list_split): 
        print(final_link)

我想通过程序调用获得结果,所有这些字母都被降低并正确传递给 post 请求,然后从站点 link 获得最终的 link

如果您使用大写字符串调用脚本,您将在表达式中比较大小写字符串

if all(i in final_link for i in arg_list_split):

没有结果。

您需要确保 arg_split_list 仅包含小写字符串,例如,通过执行

arg_list_split = [x.lower() for x in sys.argv[1:]]