首页 > 编程语言 >python基础爬虫

python基础爬虫

时间:2024-02-01 21:33:21浏览次数:31  
标签:Files title python 基础 爬虫 results headers html response

python基础爬虫

基于beautifulSoup的爬虫:

一:先导包:

import requests
from bs4 import BeautifulSoup

二:伪装:

headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:122.0) Gecko/20100101 Firefox/122.0'}

user-agent在浏览器按f12 -> 网络 -> 消息头

![9b5ca505410b9e0e05642346274f29e](C:\Users\86187\Documents\WeChat Files\wxid_a2c2u6t80tcy22\FileStorage\Temp\9b5ca505410b9e0e05642346274f29e.png)

三:获取爬取页面对象、设置编码格式(以防万一)、获取beautifulSoup对象:

response = requests.get("", headers=headers)
    response.encoding = 'utf-8'
    html=BeautifulSoup(response.text,"html.parser")

![bcf2b50102676cccbf286031bbc44ff](C:\Users\86187\Documents\WeChat Files\wxid_a2c2u6t80tcy22\FileStorage\Temp\bcf2b50102676cccbf286031bbc44ff.png)

解析器写第一种就行

四:查看需爬取网页源码确定查找内容:

all_results=html.findAll("标签名",attrs={'关键字':'关键字名'})

如:

![9736c3ec6ac538e85c724532655a242](C:\Users\86187\Documents\WeChat Files\wxid_a2c2u6t80tcy22\FileStorage\Temp\9736c3ec6ac538e85c724532655a242.png)

五:遍历查找结果并只输出标签内文本:

    for title in all_results:
        for title in all_results:
            title1 = title.get_text()
            print(title1)

示例:

随机挑选一位幸运儿

![6e515175dbd92d09963265e07d8e86e](C:\Users\86187\Documents\WeChat Files\wxid_a2c2u6t80tcy22\FileStorage\Temp\6e515175dbd92d09963265e07d8e86e.png)

完整代码:

import requests
from bs4 import BeautifulSoup
headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:122.0) Gecko/20100101 Firefox/122.0'}

#遍历翻页
for i in range(1,20):
    response = requests.get(f"https://www.cnblogs.com/xxxxxxxxx?page={i}", headers=headers)
    response.encoding = 'utf-8'
    html=BeautifulSoup(response.text,"html.parser")
    all_results=html.findAll("a",attrs={'class':'postTitle2 vertical-middle'})
    for title in all_results:
        title1 = title.get_text()
        print(title1)
        

结果:

![402facfa4cb5a8929985893e77bc21d](C:\Users\86187\Documents\WeChat Files\wxid_a2c2u6t80tcy22\FileStorage\Temp\402facfa4cb5a8929985893e77bc21d.png)

标签:Files,title,python,基础,爬虫,results,headers,html,response
From: https://www.cnblogs.com/lksjfd/p/18002164

相关文章

  • Selenium自动化测试之python
    1、简介Selenium是一个自动化测试工具,它支持多种浏览器和操作系统,可以模拟真实用户的行为,如点击、输入文本、滚动页面等。Selenium可以在多种编程语言中使用,如Java、Python、C#等。它可以帮助测试人员快速、准确地测试应用程序的功能和性能。Selenium还提供了丰富的API和库,使得测......
  • 很好用的python游戏环境(续2):强化学习算法走迷宫游戏环境(导航问题 navigation):分享一个py
    相关前文:很好用的python游戏环境(续):强化学习算法走迷宫游戏环境(导航问题navigation):分享一个python语言的迷宫游戏环境项目的GitHub地址:https://github.com/Wonz5130/Maze_AIPS.这个游戏有个非常严重且致命的error,那就是单击这个游戏界面的时候会自动转成AI执行,否则就是人......
  • C#的基础数据类型
    C#语言在.NET基元类型的基础上,也编制了一份数据类型。所以,将来我们在开发C#程序时,声明基础数据类型,其实就有两种写法。它们的对应如下表所示。.NET数据类型C#数据类型说明范围System.SBytesbyte8位有符号整数类型-128到127System.Bytebyte8位无符号整数0到255System.Int16sho......
  • d3d12龙书阅读----数学基础 向量代数、矩阵代数、变换
    d3d12龙书阅读----数学基础向量代数、矩阵代数、变换directx采用左手坐标系点积与叉积点积与叉积的正交化使用点积进行正交化使用叉积进行正交化矩阵与矩阵乘法转置矩阵单位矩阵逆矩阵矩阵行列式变换旋转矩阵坐标变换利用DirectXMath库进行向量运算、矩......
  • 很好用的python游戏环境(续):强化学习算法走迷宫游戏环境(导航问题 navigation):分享一个pyt
    相关:很好用的python游戏环境:强化学习算法走迷宫游戏环境(导航问题navigation):分享一个python语言的迷宫游戏环境前文分享了一个python下的maze游戏环境,本文再给出一个不错的实现项目,这个项目的实现更加的简单,并且可视化界面做的很好看,是用tkinter框架做的可视化:相关:迷宫游戏p......
  • python语言下的迷宫游戏的实现猜想
    由于本人是研究AI的,尤其是AI的强化学习方向,有时候就会对一些小游戏环境的实现有几分兴趣,因为刚看了有关reinforcementlearning解决maze游戏的论文,于是就突发奇想的对这个maze迷宫的实现有些想了解了。迷宫其实就是在一个表格上画线,然后构成的从某点到另一个点的一个通路的环境:......
  • 10线性代数基础综合卷
    张宇基础卷线代发现很多问题,值得再做一遍3行变换是把E放到右方,列变换是把E放到下方。这道题求逆可以用穿脱原则解出来4首先记结论,AB=O则r(a)+r(b)<n,学会证明(解集的秩为n-r(a)),B是从解集中抽出来的;5根据秩的情况判断特征值,不满秩则一定有0特征值; 当可对角化时,零特征值所对应的特征......
  • 快乐学Python,如何正确使用pandas处理时间类型的数据?
    在日常的数据分析工作中,常常会有根据日期来对数据进行分析。比如我们需要通过用户的下单时间来分析用户在不同时间段对商品的喜好;如通过访问日志的访问时间来分析系统的访问周期和负载,为不同时间段的资源调配提供依据;如通过用户刷短视频的时间来分析用户的行为特征和工作时间和工种......
  • docker的基础知识
    docker的基础知识docker命令docker-帮助命令显示docker版本信息dockerversion显示docker系统信息dockerinfo显示docker命令的帮助说明docker选项--helpdocker-镜像命令显示本地镜像dockerimages[选项]选项:-a显示所有镜像-q仅显示镜像id显示的列:REPOS......
  • 解决Python报错SSLError,如果试了网上一大堆方法还不行,看看这个吧!!
    前言这个问题困扰了群友一天,我怀着好奇心去试试看,不到5分钟给解决了哈哈。报错代码报错代码中对相关的host和url进行了替换,大家在网上发布内容也要注意隐私哈,多长个心眼子总没错。requests.exceptions.SSLError:HTTPSConnectionPool(host='xxx.com',port=443):Maxretries......