当前位置: 首页 > news >正文

数学建模-爬虫入门

Python快速入门

简单易懂Python入门

爬虫流程

  1. 获取网页内容:HTTP请求
  2. 解析网页内容:Requst库、HTML结果、Beautiful Soup库
  3. 储存和分析数据

什么是HTTP请求和响应

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如何用Python Requests发送请求

  1. 下载pip
    2.

  2. macos系统下载:pip3 install requests

在这里插入图片描述
通过第二行进行伪装为浏览器请求

实践

import requests
headers = {"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.6.1 Safari/605.1.15"
}
response = requests.get("https://movie.douban.com/top250",headers=headers)print(response.text)

什么是HTML网页结构?

在这里插入图片描述

HTML常见标签

:链接

  1. ![在这里插入图片描述](https://img-blog.csdnimg.cn/48567ae1276e494e8f03b3035aa9aa56.png) # Beautiful Soup

  1. pip3 install bs4
from bs4 import BeautifulSoup
import requests
content = requests.get("http://books.toscrape.com/").textsoup = BeautifulSoup(content,"html.parser")
all_prices = soup.findAll("p",attrs={"class","price_color"})
for price in all_prices:print(price.string[2:])

实战

import requests
from bs4 import BeautifulSoup
headers = {"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.6.1 Safari/605.1.15"
}
for start_num in range(0,250,25):response = requests.get(f"https://movie.douban.com/top250?start={start_num}", headers=headers)html = response.textsoup = BeautifulSoup(html, "html.parser")all_titles = soup.findAll("span", attrs={"class", "title"})for title in all_titles:title_string = title.stringif "/" not in title_string:print(title_string)

进阶

  1. 正则表达式
  2. 多线程
  3. 数据库
  4. 数据分析

规则

  1. 不爬公民隐私数据
  2. 不爬受著作权保护内容
  3. 不爬国家事务、国防建设、尖端科学技术等
  4. 请求数量频率不能过高
  5. 反爬就不要强行图片
  6. 了解robots.txt查看可爬和不可爬内容
http://www.lryc.cn/news/107870.html

相关文章:

  • HSRM各表
  • Ansible自动化运维工具 —— Playbook 剧本
  • 第二章:多态
  • C++面向对象设计基础
  • Linux定时运行sh脚本,如果sh文件已经在运行,则忽略本次运行
  • SpringBoot项目中的web安全防护
  • stm32和python串口数据收发
  • 无涯教程-jQuery - Dropable移动函数
  • 【Python】Web学习笔记_flask(4)——钩子函数
  • JavaScript 原型链解析,宏任务和微任务
  • 05|Oracle学习(UNIQUE约束)
  • glide加载content://com.android.contacts图片源码粗略梳理
  • 【机器学习】Feature Engineering and Polynomial Regression
  • Rust- 变量绑定
  • 向“数”而“深”,联想凌拓的“破局求变”底气何来?
  • pytorch实战-图像分类(二)(模型训练及验证)(基于迁移学习(理解+代码))
  • b 树和 b+树的理解
  • 正则表达式 —— Awk
  • 国芯新作 | 四核Cortex-A53@1.4GHz,仅168元起?含税?哇!!!
  • 【MyBatis】 框架原理
  • 三、线性工作流
  • 2023华数杯数学建模A题思路 - 隔热材料的结构优化控制研究
  • Zabbix分布式监控Web监控
  • PHP从入门到精通—PHP开发入门-PHP概述、PHP开发环境搭建、PHP开发环境搭建、第一个PHP程序、PHP开发流程
  • 【LeetCode-中等】722. 删除注释
  • rust里如何判断字符串是否相等呢?
  • python基本知识学习
  • vue3和typescript_组件
  • Qt+联想电脑管家
  • 论文阅读-BotPercent: Estimating Twitter Bot Populations from Groups to Crowds