Java语言高分悬赏:怎么提取百度新闻的标题到一个文本文件,可以使用httpclient的方法
2条回答 默认 最新
- Z_墨脱 2020-04-27 17:34关注
public class News {
public static void main(String[] args) throws ClientProtocolException, IOException {
// 创建HttpClient实例
CloseableHttpClient httpClient = HttpClients.createDefault();
// 创建httpget实例
HttpGet httpGet = new HttpGet("https://news.baidu.com/");RequestConfig config = RequestConfig.custom() .setConnectTimeout(10000)//设置连接超时时间10秒钟,单位毫秒 .setSocketTimeout(10000) //设置读取超时时间10秒钟 .build(); httpGet.setConfig(config); // 设置请求头消息User-Agent模拟浏览器 httpGet.setHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; W…) Gecko/20100101 Firefox/59.0"); // 执行get请求 CloseableHttpResponse response = httpClient.execute(httpGet); // 获取返回实体 HttpEntity entity = response.getEntity(); // 实体的内容(编码格式为utf-8) String content = EntityUtils.toString(entity, "utf-8"); // System.out.println("网页内容为: " + content); // 解析网页 得到文档对象 Document doc = Jsoup.parse(content); Elements hrefElements = doc.select("a[href]");// 选择所有的a元素 for (Element e : hrefElements) { System.out.println("新闻标题:" + e.text()); System.out.println("新闻地址:" + e.attr("href")); System.out.println("------------------------"); } }
}
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥30 Matlab打开默认名称带有/的光谱数据
- ¥50 easyExcel模板 动态单元格合并列
- ¥15 res.rows如何取值使用
- ¥15 在odoo17开发环境中,怎么实现库存管理系统,或独立模块设计与AGV小车对接?开发方面应如何设计和开发?请详细解释MES或WMS在与AGV小车对接时需完成的设计和开发
- ¥15 CSP算法实现EEG特征提取,哪一步错了?
- ¥15 游戏盾如何溯源服务器真实ip?需要30个字。后面的字是凑数的
- ¥15 vue3前端取消收藏的不会引用collectId
- ¥15 delphi7 HMAC_SHA256方式加密
- ¥15 关于#qt#的问题:我想实现qcustomplot完成坐标轴
- ¥15 下列c语言代码为何输出了多余的空格