求python出TypeError: a bytes-like object is required, not 'str'问题解决方案

问题遇到的现象和发生背景

初学者,在用python得到攻防世界web题的时候出现了错误

问题相关代码,请勿粘贴截图

```python
import requests
url="http://111.200.241.244:60052/check.php"
with open("密码.txt","r") as f:
    for i in f.readlines():
        data1={'username':'admin',"password":i.strip()}
        flag=requests.post(url,data=data1).content
        if "cyberpeace" in flag:
            print(flag)
            break



![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/766654952256158.jpg "#left")


###### 运行结果及报错内容 

```python
Traceback (most recent call last):
  File "D:\python\pyxm\main.py", line 8, in <module>
    if "cyberpeace" in flag:
TypeError: a bytes-like object is required, not 'str'

Process finished with exit code 1

我的解答思路和尝试过的方法

了解到python3和Python2在套接字返回值解码上有区别
但是是初学者 不会改

我想要达到的结果

成功运行


import requests
url = "http://111.200.241.244:60052/check.php"
with open("密码.txt", "r") as f:
    for i in f.readlines():
        data1 = {'username': 'admin', "password": i.strip()}
        flag = requests.post(url, data=data1).encoding
        if "cyberpeace" in flag:
            print(flag)
            break

将content改为encoding,即可成功运行

python版本是3.10

post里面要传一个二进制数组,不可以传字符串
你要先把字符串按utf8转byte数组,再发送