如何使用 Python fake_useragent 库和 requests 库访问网站并防止被封禁?

2023-04-17 00:00:00 python 如何使用 fake

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 内容。

相关文章