在Python中使用请求库爬取数据时返回为空如何解决?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
Python主要用来做什么
Python主要应用于:1,网络开发;2、数据科学研究;3,网络爬虫;4、嵌入式应用开发,5日游戏开发;6桌面应用开发。
html字段:
import 请求 时间=r requests.get (“https://baike.so.com/doc/24368318 - 25185095. html") r.status_code r。文本
结果分析,我们可以成功访问到该网页,但是得不到网页的结果。360年被搜索识别,我们将头部修改。
import 请求 headers =, { & # 39;才能饼干# 39;:& # 39;OCSSID=4 df0bjva6j7ejussu8al3eqo03& # 39; & # 39;才能用户代理# 39;:& # 39;Mozilla/5.0, (Windows NT 10.0;, Win64;, x64), AppleWebKit/537.36 & # 39; ,,,,,,,,& # 39;(KHTML, like 壁虎),Chrome/68.0.3440.106 Safari/537.36 & # 39; } 时间=r requests.get (“https://baike.so.com/doc/24368318 - 25185095. html",, headers =,标题) r.status_code r.text
接着我们对需要的内容进行爬取,用(;)方法找到我们内容位置,用(定格)下行遍历的方法对内容进行爬取,用(isinstance)方法对内容进行筛选:
import 请求 得到bs4 import  BeautifulSoup import bs4 headers =, { & # 39;才能饼干# 39;:& # 39;OCSSID=4 df0bjva6j7ejussu8al3eqo03& # 39; & # 39;才能用户代理# 39;:& # 39;Mozilla/5.0, (Windows NT 10.0;, Win64;, x64), AppleWebKit/537.36 & # 39; ,,,,,,,,& # 39;(KHTML, like 壁虎),Chrome/68.0.3440.106 Safari/537.36 & # 39; } 时间=r requests.get (“https://baike.so.com/doc/24368318 - 25185095. html",, headers =,标题) r.status_code r.encoding =r.apparent_encoding 时间=soup BeautifulSoup (r.text,“html.parser") for tr  soup.find拷贝(& # 39;tbody # 39;)定格: if isinstance (tr, bs4.element.Tag): tds =, tr (& # 39; td # 39;) 打印([tds [0] .string,, tds [1] .string,, tds [2] .string])
得到结果如下:
import 请求 得到bs4 import  BeautifulSoup import bs4 Clist =,列表(),#存所有城市的列的表 headers =, { & # 39;才能饼干# 39;:& # 39;OCSSID=4 df0bjva6j7ejussu8al3eqo03& # 39; & # 39;才能用户代理# 39;:& # 39;Mozilla/5.0, (Windows NT 10.0;, Win64;, x64), AppleWebKit/537.36 & # 39; ,,,,,,,,& # 39;(KHTML, like 壁虎),Chrome/68.0.3440.106 Safari/537.36 & # 39; } 时间=r requests.get (“https://baike.so.com/doc/24368318 - 25185095. html",, headers =,标题) 时间=r.encoding r.apparent_encoding #将html的编码解码为utf - 8格式 时间=soup BeautifulSoup (r.text,“html.parser"), #重新排版 for tr  soup.find拷贝(& # 39;tbody # 39;)定格:,,,#将tbody标签的子列全部读取 if isinstance (tr, bs4.element.Tag):,, #筛选结核病列表,将有内容的筛选出啦 tds 才能=,tr (& # 39; td # 39;) Clist.append才能([tds [0] .string,, tds [1] .string,, tds [2] .string]) for 小姐:拷贝范围(21): 打印才能(Clist[我])
最终结果: