[toc]

0、实现目标

image.png

类似浏览器中,输入搜索词,出现如下页面,之后把出现的页面爬取的页面进行存储。

1、请求组装

请求准备,包括请求路径、请求参数、爬虫伪装信息等

    # 一、请求组装
    # ---------------------------------------------
    # 1、url
    url = "https://www.sogou.com/web"

    # 2、参数
    wd = input("请输入搜索词:")
    params = {
        "query": wd
    }

    # 3、UA伪装  为了防止反爬虫,使自己的小爬虫伪装为浏览器
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36"
    }
    # ---------------------------------------------

2、发起请求

    # 2、发起请求
    # ---------------------------------------------
    response = requests.get(url=url, params=params, headers=headers)
    # ---------------------------------------------

3、响应处理

    # 3、响应处理
    # ---------------------------------------------
    # 简单处理成文本
    response_text = response.text
    # ---------------------------------------------

4、持久化

    # 4、持久化
    # ---------------------------------------------
    # 持久化路径和名称
    file_url = "./"
    file_name = wd + ".html"
    save_url = file_url + file_name
    # 存储
    with open(save_url, "w", encoding="utf-8") as fs:
        fs.write(response_text)
    print("爬出成功!")
    # ---------------------------------------------

5、爬虫程序

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import requests

if __name__ == '__main__':
    # 一、请求组装
    # ---------------------------------------------
    # 1、url
    url = "https://www.sogou.com/web"

    # 2、参数
    wd = input("请输入搜索词:")
    params = {
        "query": wd
    }

    # 3、UA伪装  为了防止反爬虫,使自己的小爬虫伪装为浏览器
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36"
    }
    # ---------------------------------------------

    # 2、发起请求
    # ---------------------------------------------
    response = requests.get(url=url, params=params, headers=headers)
    # ---------------------------------------------

    # 3、响应处理
    # ---------------------------------------------
    # 简单处理成文本
    response_text = response.text
    # ---------------------------------------------

    # 4、持久化
    # ---------------------------------------------
    # 持久化路径和名称
    file_url = "./"
    file_name = wd + ".html"
    save_url = file_url + file_name
    # 存储
    with open(save_url, "w", encoding="utf-8") as fs:
        fs.write(response_text)
    print("爬出成功!")
    # ---------------------------------------------

6、测试

image.png
image.png

image.png
image.png

Q.E.D.


只有创造,才是真正的享受,只有拚搏,才是充实的生活。