如何阅读a<;中的文本;预处理>;用python?

如何阅读a<;中的文本;预处理>;用python?,python,html,web-scraping,beautifulsoup,python-requests,Python,Html,Web Scraping,Beautifulsoup,Python Requests,我正在尝试制作一个脚本来检测是否使用Instagram用户名。我发现使用url 如果名称存在,则将填充有关帐户的信息,但如果名称不存在,则页面将仅在pre中包含{},而没有其他内容 我正在使用请求和BeautifulSoup来刮取页面。下面是我编写的一个脚本来测试这一点: import requests from bs4 import BeautifulSoup username = input("Enter the username you would like to check:

我正在尝试制作一个脚本来检测是否使用Instagram用户名。我发现使用url 如果名称存在,则将填充有关帐户的信息,但如果名称不存在,则页面将仅在pre中包含{},而没有其他内容

我正在使用请求和BeautifulSoup来刮取页面。下面是我编写的一个脚本来测试这一点:

import requests
from bs4 import BeautifulSoup

username = input("Enter the username you would like to check:")
account_url=('https://www.instagram.com/' + username + '/?__a=1')
r = requests.get(account_url)

print(r.text)
显示文本是可行的,但即使我输入了一个不存在的用户名或一堆随机的字母,它也总是返回一堆html,而我在实际url的inspect元素中看不到这些html。如何使它只返回pre中的文本?我只是想检测一下这个网站是否没有显示任何内容,这样我就可以确定它是否是一个被占用的用户名


另外,当您加载instagram?_a=1 url时,如果用户名不存在,inspect元素会说出现错误404,但在python中测试requests变量的状态总是返回200,这是成功的。我对python非常缺乏经验,因为我已经很长时间没有使用它了,所以非常感谢您的帮助。

如果您想要一个未使用的帐户列表,您可以使用这个

import requests
not_taken = []
user_names = ["randomuser1", "randomuser2", "randomuser3", "etc..."]

for name in user_names:
    response = requests.get(f"https://www.instagram.com/{name}/?__a=1")
    if response.status_code == 404:
        not_taken.append(name)
现在,您可以根据需要使用not_,例如:

print(not_taken)

当我放置不存在的用户名时,将返回
{}
。这是正确的行为吗?@Ohucal你的问题解决了吗?@AndrejKesely是的,这就是应该发生的事情。由于某些原因,我的计算机请求的工作方式不同,我不知道为什么不这样做。@robinfcd不是真的,我发现它或者与我的软件或互联网有关,因为它适用于其他人,但不适用于我。有一次我打开了一个vpn,当我关闭它时,它开始工作,但过了一会儿又停止了。我不知道这和请求有什么关系,但显然我的互联网影响了它。