当前位置: 欣欣网 > 码农

Python提取任何网站标题和内容

2024-03-03码农

Python,学霸

  • 阅读指南

  • 简介

  • 安装方法

  • 实例

  • 简介

    大家好!今天给你们带来了使用requests提取网页标题以及内容的简单实例,结果以json格式输出。

    安装方法

    pip install requests bs4

    实例


    import requests
    from bs4 import BeautifulSoup
    import json
    class WebPageScraper:
    def __init__(self, url):
    self.url = url
    self.headers = {
    'User-Agent''Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
    }
    def fetch_content(self):
    response = requests.get(self.url, headers=self.headers)
    if response.status_code == 200:
    return response.text
    else:
    return None
    def parse_content(self, html):
    if html:
    soup = BeautifulSoup(html, 'html.parser')
    title = soup.find('title').get_text() if soup.find('title'else"No Title Found"
    body_content = soup.find('body')
    content = ' '.join(body_content.stripped_strings) if body_content else"No Content Found"
    result = {
    'title': title,
    'content': content
    }
    return json.dumps(result, ensure_ascii=False)
    else:
    return json.dumps({'error''Failed to retrieve content'}, ensure_ascii=False)
    def get_page_info(self):
    html_content = self.fetch_content()
    return self.parse_content(html_content)
    #提取
    url = "https://www.runoob.com/python/python-tutorial.html"
    scraper = WebPageScraper(url)
    print(scraper.get_page_info())





    输出

    {"title""Python 基础教程 | 菜鸟教程""content""菜鸟教程 -- 学的不仅是技术,更是梦想! 首页 HTML CSS JavaScript Vue Bootstrap NodeJS Python3 Python2 Java C C++ C# Go SQL Linux jQuery 本地书签 首页 HTML CSS JS 本地书签 Search Python3 教 程 Python2 教程 Vue3 教程 vue2 教程 Bootstrap3 教程 Bootstrap4 教程 Bootstrap5 教程 Bootstrap2 教程 Python 基础教程 Python 基础教程 Python 简介 Python 环境搭建 Python 中文编码 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循环语句 Python While 循环语句 Python for 循环语句 Python 循环嵌套 Python break 语句 Python continue 语句 Python pass 语句 Python Number(数字) Python 字符串 Python 列表(List) Python 元组 Python 字典(Dictionary) Python 日期和时间 Python 函数 Python 模块 Python 文件I/O Python File 方法 Python 异常处理 Python OS 文件/目录方法 Python 内置函数 Python 高级教程 Python 面向对象 Python 正则表达式 Python CGI 编程 Python MySQL Python 网络编程 Python SMTP Python 多线程 Python XML 解析 Python GUI 编程(Tkinter) Python2.x 与 3.x 版本区别 Python IDE Python JSON Python AI 绘画 Python 100例 Python 测验 Python 简介 Python 基础教程 Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python 由 Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991 年。 像 Perl 语言一样, Python 源代码同样遵循 GPL(GNU General Public License) 协议。 官方宣布,2020 年 1 月 1 日, 停止 Python 2 的更新。Python 2.7 被确定为最后一个 Python 2.x 版本。 谁适合阅读 本教程? 本教程适合想从零开始学习 Python 编程语言的开发人员。当然本教程也会对一些模块进行深入,让你更好的了解 Python 的 应用。 本教程主要针对 Python 2.x 版本的学习,如果你使用的是 Python 3.x 版本请移步至 Python 3.X 版本的教程 。 本教程所有 实例基于 Python2.7。 学习本教程前你需要了解 在继续本教程之前,你应该了解一些基本的计算机编程术语。如果你学习过 PHP,ASP 等编程语言,将有助于你更快的了解 Python 编程。 执行Python程序 对于大多数程序语言,第一个入门编程代码便是 \"Hello World!\",以下代码为使用 Python 输出 \"Hello World!\": 实例 #!/usr/bin/python print ( \" Hello, World! \" ) 运行实例 » Python 3.0+ 版本已经把 print 作为一个内置函数,输出 \"Hello World!\" 代码如下: 实例(Python 3.0+) #!/usr/bin/python3 print ( \" Hello, World! \" ) 运行实例 » \b相关文章 Python2.7.14 中文手册 Python IDE(集成开发环境)介绍 Python 编码规范(Google) Python 3.X版本的教程 Python 简介 1 篇笔记 写笔记 #0 dragonv lib***[email protected] 参考地址 6785 关于脚本第一行的 #!/usr/bin/python 的解释,相信很多不熟悉 Linux 系统的同学需要普及这个知识,脚本语言的第一行,只对 Linux/Unix 用户适用,用来指定本脚本用什么解释器来执行。 有这句的,加上执行权限后,可以直接用 ./ 执行,不然会出错,因为找不到 python 解释器。 #!/usr/bin/python 是告诉操作系统执行这个脚本的时候,调用 /usr/bin 下的 python 解释器。 #!/usr/bin/env python 这种用法是为了防止 操作系统用户没有将 python 装在默认的 /usr/bin 路径里。当系统看到这一行的时候,首先会到 env 设置里查找 python 的安装路径 ,再调用对应路径下的解释器程序完成操作。 #!/usr/bin/python 相当于写死了 python 路径。 #!/usr/bin/env python 会去环境设置寻找 python 目录,可以增强代码的可移植性,推荐这种写法。 分成两种情况: (1)如果调用 python 脚本时,使用: python script.py #!/usr/bin/python 被忽略,等同于注释 (2)如果调用python脚本时,使用: ./script.py #!/usr/bin/python 指定解释器的路径 PS:shell 脚本中在第一行也有类似的声明。dragonv dragonv lib***[email protected] 参考地址 5年前 (2019-01-02) 点我分享笔记 取消 分享笔记 昵称 昵称 (必填) 邮箱 邮箱 (必填) 引用地址 引用地址 分类导航 HTML / CSS HTML 教程 HTML5 教程 CSS 教程 CSS3 教程 Bootstrap3 教程 Bootstrap4 教程 Bootstrap5 教程 Font Awesome 教程 Foundation 教程 JavaScript JavaScript 教程 HTML DOM 教程 jQuery 教程 AngularJS 教程 AngularJS2 教程 Vue.js 教程 Vue3 教程 React 教程 TypeScript 教程 jQuery UI 教程 jQuery EasyUI 教程 Node.js 教程 AJAX 教程 JSON 教程 Echarts 教程 Chart.js 教程 Highcharts 教程 Google 地图 教程 服务端 Python 教程 Python2.x 教程 Linux 教程 Docker 教程 Ruby 教程 Java 教程 C 教程 C++ 教程 Perl 教程 Servlet 教程 JSP 教程 Lua 教 程 Rust 教程 Scala 教程 Go 教程 PHP 教程 数据结构与算法 Django 教程 FastAPI 教程 Zookeeper 教程 设计模式 正则表达式 Maven 教程 Verilog 教程 ASP 教程 AppML 教程 VBScript 教程 数据库 SQL 教程 MySQL 教程 PostgreSQL 教程 SQLite 教程 MongoDB 教 程 Redis 教程 Memcached 教程 数据分析 Python 教程 NumPy 教程 Pandas 教程 Matplotlib 教程 Scipy 教程 R 教程 Julia 教程 移动端 Android 教程 Swift 教程 jQuery Mobile 教程 ionic 教程 Kotlin 教程 XML 教程 XML 教程 DTD 教程 XML DOM 教程 XSLT 教程 XPath 教程 XQuery 教程 XLink 教程 XPointer 教程 XML Schema 教程 XSL-FO 教程 SVG 教程 ASP.NET ASP.NET 教程 C# 教程 Web Pages 教程 Razor 教程 MVC 教程 Web Forms 教程 Web Service Web Service 教程 WSDL 教程 SOAP 教程 RSS 教程 RDF 教程 开发工具 Eclipse 教程 Git 教程 Svn 教程 Markdown 教程 网站建设 HTTP 教程 网站建设指南 浏览器信息 网站主机教程 TCP/IP 教程 W3C 教程 网站品质 Advertisement 反馈/建议 在线实例 · HTML 实例 · CSS 实例 · JavaScript 实例 · Ajax 实例 · jQuery 实例 · XML 实例 · Java 实例 字符集&工具 · HTML 字符集设置 · HTML ASCII 字符集 · JS 混淆/加密 · PNG/JPEG 图片压缩 · HTML 拾色器 · JSON 格式化工具 · 随机数生成器 最新更新 · Rust 宏 · Seaborn 教程 · Pandas 相关性分析 · 31.2k star, 免... · Dev Home —... · 免费开源的 AI ... · 11.2k star, 免... 站点信息 · 意见反馈 · 免责声明 · 关于我们 · 文章归档 关 注微信 Copyright © 2013-2024 菜鸟教程 runoob.com All Rights Reserved. 备案号: 闽ICP备15012807号-1 微信关注"}