如何申请个人网站域名,建设项目工程信息,做网站需要用到哪些开发软件,中信建设有限责任公司项目人员配置通过输入搜索的关键字#xff0c;和搜索页数范围#xff0c;爬出指定文本内内容并存入到txt文档。代码逐行讲解。
使用re、res、BeautifulSoup包读取#xff0c;代码已测#xff0c;可以运行。txt文档内容不乱码。
import re
import requests
from bs4 import BeautifulS…通过输入搜索的关键字和搜索页数范围爬出指定文本内内容并存入到txt文档。代码逐行讲解。
使用re、res、BeautifulSoup包读取代码已测可以运行。txt文档内容不乱码。
import re
import requests
from bs4 import BeautifulSouptitles [] #存放文档标题
urls [] #存放每个文档链接keyword input(请输入想要查找的关键字)
pagenum input(请输入想要查找的页数)
txt_name keyword 前 pagenum 页内容.txt with open(txt_name,w,encodingutf-8) as f: # 创建txt文件f.write(txt_name \r) # 将文件名写入f.close()# 每页内容单独爬取
for i in range(1, int(pagenum)1): html http://www.ofweek.com/newquery.action?keywordskeywordtype1pagenum str(i) # 根据关键词和页数生成链接resp requests.get(html) # get获取数据访问拼接后的url resp.encoding gb18030 # 读取中文时不会出现乱码content resp.text # 拿到网站的数据捕获到的网页内容给content变量# html文件解析解析响应的文件内容html.text 是 HTML 文档的源代码# html.parser 是解析器用于指定如何解析 HTML 文档bs BeautifulSoup(content,html.parser)#每个标题都存在类名为no-pic的li标签里面for news in bs.select(div.zx-tl): url news.select(a)[0][href] # 提取文章链接urls.append(url) title news.select(a)[0].text # 提取文章标题titles.append(title)for i in range(len(urls)): # 遍历每篇文章的链接resp requests.get(urls[i])resp.encodinggb18030content resp.textbs BeautifulSoup(content,html.parser)#文章的内容是存在类名为artical-content的div块里面page_content bs.select(div.artical-content)[0].textwith open(txt_name,a,encodingutf-8) as f: # 写入txt文件f.write(\ntitles[i]page_content)f.close()print(文件保存成功)