如何使用 Python fake_useragent 库和 requests 库访问网站并防止被封禁?
1.安装 fake_useragent 和 requests 库
我们需要通过 pip 命令来安装这两个库。
pip install fake_useragent requests
2.使用 fake_useragent 生成随机 User-Agent
User-Agent 是 HTTP 请求头中的一个参数,它可以告诉服务器我们使用的是什么浏览器、操作系统等信息。为了避免被服务器封禁,我们可以使用 fake_useragent 生成随机的 User-Agent。
下面是一个例子:
import fake_useragent # 创建 fake_useragent.UserAgent 对象 user_agent = fake_useragent.UserAgent() # 随机生成一个 User-Agent 字符串 user_agent_str = user_agent.random print(user_agent_str)
输出:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36
3.使用 requests 库访问网站
接下来我们使用 requests 库来进行网站访问。同时使用上面生成的随机 User-Agent 字符串。
import requests # 创建 headers 参数,指定 User-Agent headers = {'User-Agent': user_agent_str} # 访问 pidancode.com 网站 response = requests.get('https://pidancode.com', headers=headers) # 输出请求结果 print(response.text)
上面的代码使用 requests 库访问 pidancode.com 网站,并指定了 User-Agent 参数。最后输出了请求结果。
4.完整代码演示:
下面是一个完整的代码示例,演示了如何使用 fake_useragent 和 requests 库访问网站并防止被封禁。
import fake_useragent import requests # 创建 fake_useragent.UserAgent 对象 user_agent = fake_useragent.UserAgent() # 随机生成一个 User-Agent 字符串 user_agent_str = user_agent.random # 创建 headers 参数,指定 User-Agent headers = {'User-Agent': user_agent_str} # 访问 pidancode.com 网站 response = requests.get('https://pidancode.com', headers=headers) # 输出请求结果 print(response.text)
输出:
<!doctype html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>皮蛋编程 - Python学习资源和编程教程</title> <meta name="description" content="皮蛋编程是一个专注于Python学习资源和编程教程的网站,提供高质量的Python编程资料和完整的Python编程教程,让您轻松愉快地学会Python。"> <meta name="keywords" content="Python,学习资源,编程教程"> <link rel="shortcut icon" href="/static/img/favicon.ico" type="image/x-icon"> <link rel="stylesheet" href="//at.alicdn.com/t/font_2497109_dzyitklig1.css"> <link rel="stylesheet" href="/static/css/bootstrap.min.css"> <link rel="stylesheet" href="/static/css/swiper.min.css"> <link rel="stylesheet" href="/static/css/style.css"> </head> <body> <!-- 网站导航 --> <nav class="navbar navbar-expand-lg fixed-top navbar-light bg-light shadow"> ...
可以看到,我们成功访问了 pidancode.com 网站,并成功获取了网站的 HTML 内容。
相关文章