在Python中使用请求库爬取数据时返回为空如何解决

  介绍

在Python中使用请求库爬取数据时返回为空如何解决?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

Python主要用来做什么

Python主要应用于:1,网络开发;2、数据科学研究;3,网络爬虫;4、嵌入式应用开发,5日游戏开发;6桌面应用开发。

html字段:

在Python中使用请求库爬取数据时返回为空如何解决”> <br/> </p> <p>机器人协议:<br/> </p> <p> <img src=

import 请求   时间=r  requests.get (“https://baike.so.com/doc/24368318 - 25185095. html")   r.status_code   r。文本

结果分析,我们可以成功访问到该网页,但是得不到网页的结果。360年被搜索识别,我们将头部修改。

在Python中使用请求库爬取数据时返回为空如何解决”> <br/> </p> <p>输出有个小插曲,网页内容很多,我是想将前500个字符输出,第一次格式错了</p> <pre类= 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])

得到结果如下:

在Python中使用请求库爬取数据时返回为空如何解决”> <br/> </p> <p>修改输出的数目,我们用Clist列表来存取所有城市的排名,将前20个输出代码如下:</p> <pre类= 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[我])

最终结果:

在Python中使用请求库爬取数据时返回为空如何解决”> <h2 class=在Python中使用请求库爬取数据时返回为空如何解决