文章分类 -  B00 Python

摘要:> 读书网是一个用来练习爬虫非常不错的网址,没有严格的反爬手段,当然我们应该要以学习的目的去练习,而不应对网站的恶意攻击 读书网网址:https://www.dushu.com/ [toc] ## 1. 传统方法 - 建立项目: ![](https://img2022.cnblogs.com/blo 阅读全文
posted @ 2023-06-28 23:02 枫_Null 阅读(11) 评论(0) 推荐(0)
摘要:> Scrapy中间件分为下载器中间件,Spider中间件,本文主要介绍下载器中间件Downloader MiddleWare [toc] ##1. Downloader MiddleWare - 下载器中间件是引擎和下载器之间的桥梁,引擎发送request请求给下载器,就可以在中间件中设置有关数据 阅读全文
posted @ 2023-06-28 23:02 枫_Null 阅读(13) 评论(0) 推荐(0)
摘要:> CrawlSpider能够设置链接规则,符合规则的则请求该链接,CrawlSpider能够对网站全站进行爬取,功能非常强大。 [toc] ## 1. CrawlSpider介绍 - 传统的spider实现多页面获取数据,需要多次回调函数,而CrawlSpider,使用正则设定url规则,只要网页 阅读全文
posted @ 2023-06-28 23:02 枫_Null 阅读(97) 评论(0) 推荐(0)
摘要:> 一般的爬虫只能爬取单个网页的数据,对于多个页面需要多次requests,而Scrapy中回调函数可以反复的爬取 [toc] ##1. 多网页获取数据 - 对于有些页面,有**下一页**按钮,且审查元素中存在下一页的url,如: ![](https://img2022.cnblogs.com/bl 阅读全文
posted @ 2023-06-28 23:01 枫_Null 阅读(38) 评论(0) 推荐(0)
摘要:> Scrapy 是用 Python 实现的一个为了爬取网站数据、提取结构性数据而编写的应用框架。 [toc] ## 1.安装scrapy - **windows** 安装scrapy:`pip install scrapy` 安装pypiwin32:`pip install pypiwin32` 阅读全文
posted @ 2023-06-28 23:01 枫_Null 阅读(23) 评论(0) 推荐(0)
摘要:> MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 [toc] ## 1. MongoDB简介 - MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 - M 阅读全文
posted @ 2023-06-28 23:01 枫_Null 阅读(42) 评论(0) 推荐(0)
摘要:> 爬虫爬取的数据常常储存在TXT文本文件,Excel表格文件,数据库中。Python中常用的数据库有MySQL,MongoDB,SQLite ## 1. SQLite简介 SQLite是一个轻量级的数据库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。一个数据库就是一个文件 阅读全文
posted @ 2023-06-28 23:01 枫_Null 阅读(58) 评论(0) 推荐(0)
摘要:> 爬虫会占用网站资源,对网站属于一种攻击,所以爬取需适当,用于学习即可 [toc] ### 1. 爬取读书网书名及简介 ```python from selenium import webdriver url = 'https://www.dushu.com/book/1163_1.html' d 阅读全文
posted @ 2023-06-28 23:00 枫_Null 阅读(26) 评论(0) 推荐(0)
摘要:> selenium常用于自动化测试,其解析标签可以使用xpath语法,selector语法,还有自身的用法,以及对浏览器进行一些操作。 [toc] ## 1. 分析标签 - 要爬取的网址:http://www.baidu.com - 通过属性(也叫审查元素)查看标签属性,选中1号区激活选择箭头,点 阅读全文
posted @ 2023-06-28 23:00 枫_Null 阅读(64) 评论(0) 推荐(0)
摘要:> selenium 是一个 web 的自动化测试工具,能模仿人为操作,进行网页的浏览,刷新,标签的点击,输入文字到搜索框,滑动侧边滚动条等一系列操作 ## 1. 安装selenium库 - windows:`pip install selenium` ## 2. 安装 Chrome浏览器 - 也可 阅读全文
posted @ 2023-06-28 22:59 枫_Null 阅读(37) 评论(0) 推荐(0)
摘要:> 介绍了一些基本的爬虫用法,下面根据所学做一些案例。tip:由于网站会不断更新迭代,所以网站中的标签,内容可能有所改变,程序可能发生报错,仅为学习提供思路 **!!! 注意:文档的保存路径需要改变,否则报错 !!!** ## 1. BeautifulSoup爬取读书网 ```python impo 阅读全文
posted @ 2023-06-28 22:59 枫_Null 阅读(15) 评论(0) 推荐(0)
摘要:### 11.1-随机请求头 网址:http://www.useragentstring.com/pages/useragentstring.php 里面有各种请求头,下图选择了chrome类型的请求头 ![](https://img2020.cnblogs.com/blog/2600705/202 阅读全文
posted @ 2023-06-28 22:56 枫_Null 阅读(28) 评论(0) 推荐(0)
摘要:[toc] ### 4.1-cooki 缺点:cooki只存在一定时间 1. 有些网站需要登录才能看见里面的内容,如何让爬虫也能获取? > 我们登录网页时,浏览器会把我们我用户名密码等信息加密在cooki中,再发送给服务器,服务器识别用户名密码后就返回登录后的页面给用我们。 > > 登录一次后,浏览 阅读全文
posted @ 2023-06-28 22:56 枫_Null 阅读(49) 评论(0) 推荐(0)
摘要:> 大多情况下爬虫爬取到的数据是比较乱的,这里介绍几种常用的数据清洗方法 [toc] #### 1. re方法 ```python # 缺点:数据会连成一句话 # 适用于列表中只有一条有用数据(即一个元素),其他为空白字符 import re data_list = ["\n \t data1 \n 阅读全文
posted @ 2023-06-28 22:55 枫_Null 阅读(195) 评论(0) 推荐(0)
摘要:```python # 导入相应的库 from bs4 import BeautifulSoup soup = BeautifulSoup(data,'lxml') ``` ### 6.1-find方法 ```python # 只查找第一个遇到的 title title = soup.find(na 阅读全文
posted @ 2023-06-28 22:55 枫_Null 阅读(16) 评论(0) 推荐(0)
摘要:[toc] 点击查看代码 ``` # html数据赋值给data data = ''' boookone Giada De Laurentiis 2005 30.00 booktwo J K. Rowling 2005 29.99 bookthree James 2001 40 bookfour F 阅读全文
posted @ 2023-06-28 22:55 枫_Null 阅读(13) 评论(0) 推荐(0)
摘要:[toc] 点击查看代码 ``` # 数据 data = '''{"store": { "book": [ { "category": "reference", "author": "李白", "title": "《将进酒》", "price": 9.5 }, { "category": "fict 阅读全文
posted @ 2023-06-28 22:54 枫_Null 阅读(11) 评论(0) 推荐(0)
摘要:[toc] 点击查看代码 ``` # 一段str类型的数据,赋值为books books = ''' Everyday Italian Giada De Laurentiis 2005 30.00 Harry Potter J K. Rowling 2005 29.99 XQuery Kick St 阅读全文
posted @ 2023-06-28 22:54 枫_Null 阅读(13) 评论(0) 推荐(0)
摘要:[toc] ### 3.1-普通使用 ```python import requests url = 'https://movie.douban.com/top250' # 伪装成浏览器 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; 阅读全文
posted @ 2023-06-28 22:54 枫_Null 阅读(12) 评论(0) 推荐(0)
摘要:[toc] ### 2.1-普通用法 ```python # urllib 是python自带库 import urllib from urllib import request url = 'http://www.baidu.com/' response = urllib.request.urlo 阅读全文
posted @ 2023-06-28 22:53 枫_Null 阅读(9) 评论(0) 推荐(0)