![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
爬虫
weixin_45622770
这个作者很懒,什么都没留下…
展开
-
3.1处理Cookie登录小说网
#登录 得到cookie #带着cookie 去请求到书架url 书架上的内容 import requests session = requests.session() data = { "loginName": "18536355523", "password": "123456zp" } #1.登录 url = "https://passport.17k.com/ck/user/login" resp = session.post(url,data = data) #print(resp.t原创 2021-07-28 21:41:35 · 223 阅读 · 0 评论 -
爬虫总结-
学艺不精阶段性总结 情况1: 通过页面源代码能获取到我们想要的数据,进一步可以利用正则,BeautifulSoup,xpath提取我们想要的数据。 情况2: 页面源代码获取不到我们想要的数据,利用抓包工具刷新,preview寻找想要的json数据,然后通过headers找到url。注意,有时我们要用post请求,翻页观察到headers里data中参数的变化,由此我们进行for循环爬取多页数据。有时我们要用get请求,翻页观察到headers里param中参数的变化,由此我们进行for循环爬取多页数据。原创 2021-07-28 21:39:06 · 44 阅读 · 0 评论 -
2.4 爬取新发地菜价
页面源代码获取不到我们想要的数据,利用抓包工具刷新,preview寻找想要的json数据,然后通过headers找到url。注意,这里我们要用post请求,翻页观察到headers里data中参数的变化,由此我们进行for循环爬取多页数据。 #爬取多页 import requests import csv url = "http://www.xinfadi.com.cn/getPriceData.html" f = open("菜价100.csv",mode = "w",newline = "", en原创 2021-07-28 21:33:38 · 522 阅读 · 0 评论 -
2.5 xpath基本使用
from lxml import etree html = """ <book> <id>1</id> <name>野花遍地⾹</name> <price>1.23</price> <nick>臭⾖腐</nick> <author> <nick id="10086">周⼤强</nick> &l原创 2021-07-28 21:15:03 · 40 阅读 · 0 评论 -
2.3 bs4模块及爬取网页图片
不论是find还是find_all 参数⼏乎是⼀致的. 语法:find(标签, 属性=值) 意思是在⻚⾯中查找 xxx标签, 并且标签的xxx属性必须是xxx值 <div class="honor"> page.find("div", class="honor") 注意, python中class是关键字. 会报错的. 怎么办呢? 可 以在class后⾯加个下划线 page.find("div", class_="honor") 举例: import requests from bs4 .原创 2021-07-28 20:55:38 · 135 阅读 · 0 评论 -
2.1 正则表达式及re模块
基本用法: 正则的语法: 使⽤元字符进⾏排列组合⽤来匹配字符串 在线测试正则表达式https://tool.oschina.net/regex/ 案例: 综上我们可以发现.表示尽可能多的匹配,.?表示尽可能少的匹配 import re #findall 查找所有. 返回list lst = re.findall(r"m", "mai le fo len, mai nimei!") print(lst) # ['m', 'm', 'm'] lst = re.findall(r"\d+", "5点之前原创 2021-07-28 20:37:21 · 67 阅读 · 0 评论 -
chapter2 爬虫豆瓣top250
import requests #爬虫请求包 import re #正则表达式的包 import csv #导入csv包,写入数据 #请求头,模拟浏览器 headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36" } #提前加载原创 2021-07-24 22:26:54 · 55 阅读 · 0 评论 -
chapter1 request 03
import requests #get 请求中,URL如果较长,一般添加参数选项params,可达到原来效果(实例如豆瓣);post请求,添加参数data,(实例如百度翻译) #url = "https://movie.douban.com/j/chart/top_list?type=24&interval_id=100%3A90&action=&start=0&limit=20" url = "https://movie.douban.com/j/chart/top_li原创 2021-07-23 20:31:40 · 34 阅读 · 0 评论 -
chapter1 request 02
# 案例2.抓取百度翻译数据 # 准备参数 kw = input("请输⼊你要翻译的英语单词:") dic = { "kw": kw # 这⾥要和抓包⼯具⾥的参数⼀致. } # 请注意百度翻译的sug这个url. 它是通过post⽅式进⾏提交的. 所以我们也要模拟post请求 resp = requests.post("https://fanyi.baidu.com/sug",data=dic) # 返回值是json 那就可以直接解析成json resp_json = resp.json原创 2021-07-23 17:53:08 · 36 阅读 · 0 评论 -
chapter1 request 01
import request url = "https://www.sogou.com/web?query=周杰伦" resp = request.get(url) print(resp) print(resp.text) #拿到页面源代码 首先print(resp)显示: 说明请求成功 但print(resp.text)出现问题: 说明服务器认为这是程序发送来的请求,我们需要装扮得更像浏览器,添加参数headers, 代码如下: import request url = "https://www.原创 2021-07-23 17:21:41 · 42 阅读 · 0 评论