python爬虫入门

基础回顾

使用函数, 先导入, 直接点方法名使用

import math
m = math.log10(100)
print(m)

python 交互模式

image-20230711111230493

input输入示例

age = int(input("请输入年龄"))
age += 1
print(age)

image-20230711111423257

if else 的使用

和java一样, 只是不加括号, else if 阉割成了 elif

与或非

java : && || !

python : and or not

列表

list = [1, "玩具"]
list.append("狗子")
print(list)
print(list[1])

字典

contact = {"小明": 17, "小耿": 20, "小强": 50}
print(contact["小明"])
print(contact)

for 循环遍历

contact = {"小明": 17, "小耿": 20, "小强": 50}
for name, age in contact.items():print(name)print(age)
小明
17
小耿
20
小强
50

f String 表达式

name = "123"
print(f"{name}")

定义函数

def fun(name):print(name)fun(123)

对象赋予属性

class Cat:def __init__(self, name, age, color):self.name = nameself.age = ageself.color = colordef speak(self):print("喵" * self.age)cat1 = Cat("Jojo", 3, "橙色")print(f"小猫{cat1.name}{cat1.age}岁了颜色是{cat1.color}")
cat1.speak()

继承

class Mammal:def __init__(self, name, sex):self.name = nameself.sex = sexself.num_eyes = 2def breathe(self):print(self.name + "在呼吸...")def poop(self):print(self.name + "上厕所...")class Human(Mammal):def __init__(self, name, sex):super().__init__(name, sex)self.has_tail = Falsedef read(self):print(self.name + "在阅读...")class Cat(Mammal):def __int__(self, name, sex):super().__init__(name, sex)self.has_tail = Truedef scratch_sofa(self):print(self.name + "在抓沙发")cat1 = Cat("jojo", "男")
print(cat1.name)
cat1.poop()

爬虫入门

基础知识

查看网页可爬取文档 …/robots.txt

image-20230711215703779

HTTP响应

image-20230711220051314

text/html; charset=utf-8 响应类型是HTML , 编码是UTF-8

application/json; charset=utf-8 响应类型是JSON, 编码是UTF-8

+++

安装 requests 系统

pip install requests 
conda install requests

pip python 包管理工具

https://pip.pypa.io/en/stable/instatlation/

也可以使用 anaconda

+++

requests 库使用

import requests
response = requests.get("http://books.toscrape.com/")
print(response)

一行代码就可以爬到数据了, 打印结果是该网站的html代码

添加 headers

添加headers头的目的是把python编辑器伪装成浏览器, 这里爬取豆瓣网的电影top250

import requests
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.43"
}content = requests.get("https://movie.douban.com/top250", headers=headers)
print(content.text)

BeautifulSoup 库

Beautiful Soup是一个Python包,用于解析HTML和XML文档(包括具有格式错误的标记,即非封闭标签,因此以标签汤命名)。它为解析的页面创建了一个解析树,可用于从HTML中提取数据,[3]这对于网页抓取很有用

from bs4 import BeautifulSoup
import requests# 抓取到内容
content = requests.get("http://books.toscrape.com/").text
# 将HTML内容解析成一个BeautifulSoup对象
soup = BeautifulSoup(content, "html.parser")
# 获得a标签 <a title="It's Only the Himalayas"> ..., 此时是一个列表
title = soup.findAll("a", attrs={"title": "It's Only the Himalayas"})
# 通过遍历列表获得a标签内的内容
for t in title:print(t.text)

params 参数

params = {id: 1}
res = requests.get('https://www.runoob.com/', params=params)

等价于

requests.get('https://www.runoob.com?id=1')

解决乱码问题

答案来自 chatgpt

import requestsurl = "http://www.rizhao.gov.cn/"# 发起HTTP GET请求并获取HTML内容
response = requests.get(url)
response.encoding = response.apparent_encoding# 解码HTML内容
content = response.text
content.encode().decode('utf-8')
print(content)

抓取分页豆瓣top250

import requests
from bs4 import BeautifulSoupheaders = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.43"
}for start_number in range(0, 250, 25):content = requests.get(f"https://movie.douban.com/top250?start={start_number}", headers=headers).textsoup = BeautifulSoup(content, "html.parser")titles = soup.findAll("span", attrs={"class", "title"})for title in titles:title_string = title.stringif '/' not in title_string:print(title_string)

headers).text
soup = BeautifulSoup(content, “html.parser”)
titles = soup.findAll(“span”, attrs={“class”, “title”})
for title in titles:
title_string = title.string
if ‘/’ not in title_string:
print(title_string)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/15506.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI落地:儿童节贺卡

昨天有个朋友Lisa找到我&#xff0c;她是幼儿园的老师&#xff0c;看到我最近搞了个爱落地星球&#xff0c;在研究各行各业AI落地的事情&#xff0c;问我能不能用AI帮她写一百多张贺卡。 说起来写贺卡&#xff0c;我只会写“节日快乐”。现在有了ChatGPT&#xff0c;那就大不一…

Web3 的大规模普及和飞轮效应

点击上方“小强的进阶之路”&#xff0c;选择“星标”公众号 优质文章&#xff0c;及时送达 预计阅读时间: 5分钟 “iPhone 时刻”是指具有颠覆性意义的技术或产品在推出后所引发的一系列重大变革。像苹果公司的iPhone一样&#xff0c;Web3也可能在某个时刻产生显著的变革和重大…

AIGC第一波裁员已至

转自&#xff1a;51CTO技术栈 作者 | 徐杰承 审校 | 云昭 让所有人都没想到的是&#xff0c;正值人工智能之火烧遍全球之时&#xff0c;一家估值15亿美元&#xff0c;曾一度被多家媒体评价为2022年成长最快的AI独角兽的企业却突然公开宣布裁员。 7月12日早上&#xff0c;美国AI…

OAuth 2.0(四):手把手带你写代码接入 OAuth 2.0 授权服务

今天我们开始落地写代码&#xff0c;基于橘长之前接入过农业银行的授权&#xff0c;今天首先作为第三方服务来和大家分享「 手把手接入 OAuth 2.0 授权服务 」。 一、业务背景 近期团队帮银行做了一个互动营销活动&#xff0c;活动入口在行方的 App 上&#xff0c;当用户在行…

当推荐和搜索遇上大模型,会碰撞出什么样的火花

推荐和搜索是近年来信息分发的重要方式&#xff0c;小红书UGC社区让人印象深刻&#xff0c;其推荐系统有何特别之处&#xff1f;学界对搜推系统召回阶段有哪些主要进展和主流方法&#xff1f;面对大语言模型的兴起&#xff0c;推荐和搜索的发展有哪些机遇和挑战&#xff1f; 为…

今天,ChatGPT「代码解释器」正式解禁!30秒图片变视频,动嘴做表 | 十大惊人魔法全集...

【导读】坐等3个多月&#xff0c;ChatGPT「代码解释器」终于全面开放了&#xff0c;一大波魔法来袭。 家人们&#xff0c;终于来了&#xff01; 刚刚&#xff0c;ChatGPT「代码解释器」测试版正式向所有Plus用户开放。 Karpathy 在他的博客文章中介绍了 OpenAI 的代码解释器测试…

贾跃亭“杀回”FF核心管理层;近四成程序员只爱远程工作;小米回应被华为起诉专利侵权 | EA周报...

EA周报 2023年3月3日 每个星期1分钟&#xff0c;元宝带你喝一杯IT人的浓缩咖啡&#xff0c;了解天下事、掌握IT核心技术。 周报看点 1、复旦 Moss 团队&#xff1a;Moss 参数规模约是 ChatGPT 的 1/10 2、贾跃亭“杀回”FF核心管理层&#xff0c;重掌大权且权力范围扩大 3、科大…

2023CSDI算力+智能:数字时代的进化升级

引言 &#xff1a;在未来的产业布局中&#xff0c;云网融合、软硬一体化&#xff0c;硬件智能化、软件的泛化以及数据无处不在&#xff0c;基本是未来的趋势。新一轮的信息科技基本都长在云上&#xff0c;未来大部分的科技也都在信息技术之上&#xff0c;这也是互联网平台最大的…

用AI把自己画进动漫里,3天揽获150万+播放量,职业动画师:有被吓到

萧箫 发自 凹非寺量子位 | 公众号 QbitAI 只需随手录制一段视频&#xff0c;AI就能把你完美放进动漫中&#xff01; 无论是线条、色彩还是光影呈现&#xff0c;都与美漫中的写实风格如出一辙&#xff0c;动画也是细腻流畅&#xff0c;帧数显然不低&#xff1a; 制作这样一部包含…

干货 | 如何用ChatGPT30秒内读完2小时课程视频,提升100倍学习力

Hi! 大家好&#xff0c;我是专注于AI项目实战的赤辰&#xff0c;本期继续给大家带来解放100倍生产力的工具教程&#xff01; 目前信息量爆炸&#xff0c;我们每天都面临着海量的在线视频。不论是教育、新闻还是娱乐&#xff0c;视频内容无处不在&#xff0c;由于时间有限和信息…

GPT-4炸圈--多模态大模型

前言 在chatGPT如火如荼的时候&#xff0c;OpenAI又上演了王者归来的戏码&#xff0c;重磅发布了GPT-4。GPT-4是作为“帮你写代码”和你“肆意聊天”的chatGPT的基础模型GPT-3的升级版&#xff0c;是一个新的里程碑。 GPT-4 是一个大型多模态模型&#xff0c;虽然很多能力还不…

新bing可以在你指出它给出的代码的错误后马上改正

我在新bing中问了一个问题&#xff1a; dart中怎么用正则表达式寻找字符串中第一个数值的位置。 在运行bing给出的代码后&#xff0c;发现是错误的&#xff0c;经过检查&#xff0c;我找出了bing错误的代码行。我把改正后的内容告诉bing后&#xff0c;bing马上明白自己错哪儿了…

ChatGPT | Bing | Google Bard | 讯飞星火 | 到底哪家强?实测

最近AIGC战场依然热闹&#xff0c;微软的new bing、Google的Bard、国内的讯飞星火认知大模型&#xff0c;都接连上阵&#xff0c;我们对比ChatGPT一起来看看&#xff0c;我把实际使用测试结果发出&#xff0c;供大家参考。有些测试结果可能会出乎大家的预料哦… 今天我们暂时主…

new bing 对比 chatgpt

使用CombineFileInputFormat将多个小文件合并为一个输入分片 -

ChatGPT 和 Bing Chat两者之间的比较,看完你就懂了

目录 一、ChatGPT 1.1 介绍 1.2 特点 1.3 使用场景 二、 Bing Chat 2.1 介绍 2.2 功能特点 2.3 使用场景 三、对比 一、ChatGPT 1.1 介绍 ChatGPT是一款基于人工智能技术的语言模型应用&#xff0c;由美国人工智能研究实验室OpenAI在2022年11月30日推出。该模型是一种…

chatgpt赋能python:Python图片改名:优化您的网站图片SEO

Python图片改名&#xff1a;优化您的网站图片SEO 如果您是一个有网站运营需求的开发者&#xff0c;那么您一定知道如何优化您的网站来获得更好的访问量和流量。但是&#xff0c;您是否考虑过优化您的网站图片以提高SEO排名呢&#xff1f; 在这篇文章中&#xff0c;我们将介绍…

【ChatGPT的小妙招】结合Excel的vbs开发者工具达成对Excel文件的处理

【ChatGPT的小妙招】结合Excel的vbs开发者工具达成对Excel文件的处理 使用ChatGPT处理Excel文件的原理例子&#xff08;翻译整合&#xff09;操作方法1. 对整份Excel工作簿进行翻译2. 进入ChatGPT对话框&#xff0c;描述需求3. 打开两个Excel表格4. 打开Excel的开发工具5. 打开…

chatgpt赋能python:Python函数改名:为什么需要改名以及如何改名

Python函数改名&#xff1a;为什么需要改名以及如何改名 在Python编程中&#xff0c;函数是非常常见和重要的代码语句&#xff0c;用于完成特定的任务或操作。然而&#xff0c;在实际开发中&#xff0c;我们可能需要对已有函数进行改名&#xff0c;这个过程可能并不简单&#…

chatgpt赋能python:Python文件夹怎么改名:终极指南

Python文件夹怎么改名&#xff1a;终极指南 如果你是一名Python程序员&#xff0c;你一定会不断地创建、修改和管理文件夹。而有时候&#xff0c;你可能需要给文件夹改名&#xff0c;比如重命名一个项目文件夹&#xff0c;或者把文件夹名字改得更加符合你的工作流程。本文将为…

chatgpt赋能python:Python更名到底是否必要?

Python更名到底是否必要&#xff1f; 在社交媒体上&#xff0c;Python社区爆发了一系列的关于Python是否更名的讨论。这一讨论的背景是&#xff1a;是否称呼"Python"的原则可能对一些人造成冒犯。因此&#xff0c;Python的创始人们开始考虑是否需要对Python进行更名…