首先我们用到的软件是工具是pycharm,py3.6版本,工具包是 requests 和 bs4,没下载的抓紧时间哈~~~
接着看下效果图吧~
空行没有消除,跟题目很相仿~~~简单粗暴,这里只说方法
1、导入工具包
import requests from bs4 import BeautifulSoup
2、先写一个主函数
if __name__ == '__main__': url = 'https://www.qiushibaike.com/text/' headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64)', } data = { "itr": "https://www.qiushibaike.com/imgrank/", "itu": "https://www.qiushibaike.com/text/", "ti": "幽默笑话大全_爆笑笑话_笑破你的肚子的搞笑段子 - 糗事百科", }
3、接着写逻辑函数
def get_content(url): # 用get请求获取连接中data的主要信息 page = requests.get(url, data, headers=headers) # 转码 page.encoding = 'utf-8' # 抓包工具的写法 soup = BeautifulSoup(page.text, 'html.parser') # '.content span'这种写法够粗暴的,看不懂的可以私信 ✈✈✈ 我 results = soup.select('.content span') # 每页的段子很多,格式工整,so得循环遍历得到每一个段子 for result in results: # 输出文本 print(result.text)
4、其实这还不算完整,why,不知道你们看到没有,主函数中没有逻辑函数的入口啊~~~也许你发现了
get_content(url)
5、这就完整了,试试呗~~~~
PS:抓取的段子内容间距很大,可以优化,有什么好的建议可以@我~~~