def getNewsDetail(self, url): resp = self.request(url, 'GET', {}) if not resp: print('请求数据失败,请检查你的网络环境') return '' html = etree.HTML(resp) title = ''.join(html.xpath('//div[@class="content-article"]/h1/text()')).strip() content = '\n'.join(html.xpath('//div[@id="ArticleContent"]/p[@class="one-p"]/text()')).strip() return title, content
时间: 2024-02-06 18:02:05 浏览: 51
WIndows Redis可视化工具:resp-2022.1.0.0 GUI
5星 · 资源好评率100%
这段代码是该类的一个方法,用于获取新闻的标题和内容,参数url表示新闻的URL地址。方法内部首先使用request方法向指定的URL发送GET请求,获取新闻的HTML页面。如果请求失败,则在控制台输出错误信息并返回空字符串。如果请求成功,则使用lxml库中的etree模块解析HTML页面,获取新闻的标题和内容。其中,title使用xpath表达式获取class属性为"content-article"的div元素下的h1元素的文本内容,并使用join和strip方法将文本内容转换为字符串并去除前后空格;content则使用xpath表达式获取id属性为"ArticleContent"的div元素下的class属性为"one-p"的p元素的文本内容,并使用join和strip方法将文本内容转换为字符串并去除前后空格。最后,将获取到的标题和内容作为元组的形式返回。
阅读全文