必须按照这个库,爬虫必备!
pip install requests
import get
import save
spider_text = get.html("https://www.baidu.com/")
save.file(spider_text)
更改 get.html() 中的参数,改成你想要爬取的网站的地址!
get 和 set 被我做成模块,然后整个主体代码就简洁起来!
只需要调用 get 模块中的 html 函数,就能获取改网页中的 HTML 代码!
默认保存路径为当前文件夹下的 output 文件夹
get 模块源码:
import requests
def html(spider_url):
""" 爬取网页文本内容
:param spider_url 要爬取的网页
:return 返回文本
"""
header = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
"Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.42 "
}
response = requests.get(spider_url, headers=header)
# 是否爬取成功
response.raise_for_status()
# 保证编码
response.encoding = response.apparent_encoding
return response.text
def hello():
print("Hello get.py")
save 模块源码:
import random
import time
import os
"""
本模块默认保存位置: 当前文件夹下的 output
"""
# 默认输出路径
output_dir = "./output/"
def random_filename():
"""
随机文件名
:return 返回文件名
"""
filename = str(time.time())
return filename.replace(".","")
def check():
""" output 文件夹是否被创建 """
if os.path.exists(output_dir) == False:
os.system("mkdir output")
def file(saved_text, filename="", filetype=".txt"):
"""
保存文件, 默认保存为记事本格式
:param saved_text 要保存的文本
:param filename 文件名
:param filetype 文件类型
"""
check()
if filename == "":
filename = random_filename()
# 保存文件路径拼接
save_path = output_dir + filename + filetype
with open(save_path, 'w', encoding="utf-8") as f:
f.write(saved_text)
def html(saved_text, filename=""):
"""
保存网页文件到本地
:param saved_text 要保存的网页文本
"""
file(saved_text, filename, filetype=".html")