爬虫网页内容生成html

一、数据来源分析

1.明确需求

明确网站url

数据内容 ->html

2.抓包分析

打开浏览器开发者工具,(右击检查),刷新

通过关键字搜索

在标头中找到网址,cookie

爬虫网页内容生成html_第1张图片爬虫网页内容生成html_第2张图片爬虫网页内容生成html_第3张图片

二、代码实现

1、发送请求

模拟浏览器发送请求->url:唯一资源定位符

模拟浏览器:headers = {user-agent:}

请求标头里的内容

构建键值对

请求网址:url =

发送请求:get/post(在请求方法中显示)

post请求参数:在载荷中

get请求参数:直接在网址中 spm=。。。。。

re

2.获取数据

即网络源代码(返回相应数据)

获取相应数据三种方式:

  • response.text

获取响应文本数据(字符串)网页源代码

  • response.json()

json数据(字典/列表)

  • response.content
  • 获取二进制数据(图片/音频)

 

3.解析数据

提取文章(标题、内容)

解析方法

re正则表达式:字符串数据

css选择器:根据标签属性

xpath节点提取:标签节点

css选择器方法
id=''ID名 (有id就先用id

class=''

标签名h1

#定位id名:#id title=selector.css('#articleContentId::text').get()

#class:.类名

4.保存数据

保存本地

文章内容--》html--》pdf

sponse=requests.get(url=url,headers=headers)

import requests
import  parsel
import pdfkit



'''发送请求'''
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 Edg/122.0.0.0'
           }
url = 'https://blog.csdn.net/weixin_48201324/article/details/121484930'

response = requests.get (url = url ,headers = headers)
html = response.text
#把html字符串数据转成可解析对象
selector = parsel.Selector(html)
#css xpath方法
#定位id名:#id
#class:.类名
title =selector.css('#articleContentId::text').get()
#

print (title) content = selector.css('#content_views').get()#获取正文全部标签,保存html模式 print(content) #保存数据 #前端模版 html_str = ''' Document {article} ''' #字符串格式化方法 html_data = html_str.format(article=content) print (html_data) # 截取前10个字符作为文件名 title = title[:10] new_title = title[:10] #文件路径 html_path = 'html\\'+new_title+'.html' with open(html_path,mode = 'w',encoding='utf-8') as f: f.write(html_data)

你可能感兴趣的:(爬虫)