热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

谢谢大家,希望你们帮我一下吧,我直接上代码(涉及爬虫的)

感谢各位,帮我看一下这个吧,getNews()是简单爬虫,toGetNews()是

感谢各位,帮我看一下这个吧,getNews()是简单爬虫,toGetNews()是关键字爬虫(原理比较简单)mSearchView是一个搜索栏。
能够通过搜索栏传值,但是点击搜索确认后不能进行关键字爬虫,好苦恼,确认搜索里面我写了方法,听人说是线程问题,但对这个我不太清楚,恳请大家指教。
如下图所示:




package com.haopeng.thenews.fragment;import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.SearchView;import com.haopeng.thenews.NewsDisplayActivity;
import com.haopeng.thenews.R;
import com.haopeng.thenews.adapter.NewsAdapter;
import com.haopeng.thenews.entity.News;import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;import java.util.ArrayList;
import java.util.List;/*** Created by Administrator on 2017/5/7.*/public class Main extends Fragment {private List newsList;private NewsAdapter adapter;private Handler handler;private ListView lv;private View main;private SearchView mSearchView;public String Query;&#64;Nullable&#64;Overridepublic View onCreateView(LayoutInflater inflater, &#64;Nullable ViewGroup container, &#64;Nullable Bundle savedInstanceState) {main&#61;inflater.inflate(R.layout.main,null);lv &#61; (ListView) main.findViewById(R.id.news_lv);mSearchView&#61;(SearchView)main.findViewById(R.id.searchView);mSearchView.setSubmitButtonEnabled(true);newsList &#61; new ArrayList<>();getNews();mSearchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {&#64;Overridepublic boolean onQueryTextSubmit(String query) {Query&#61;query;System.out.println(Query);toGetNews();handler &#61; new Handler(){&#64;Overridepublic void handleMessage(Message msg) {if(msg.what &#61;&#61; 1){adapter &#61; new NewsAdapter(getActivity(),newsList);lv.setAdapter(adapter);lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {&#64;Overridepublic void onItemClick(AdapterView parent, View view, int position, long id) {News news &#61; newsList.get(position);Intent intent &#61; new Intent(getActivity(),NewsDisplayActivity.class);intent.putExtra("news_url",news.getNewsUrl());startActivity(intent);}});}}};return true;}&#64;Overridepublic boolean onQueryTextChange(String newText) {return false;}});handler &#61; new Handler(){&#64;Overridepublic void handleMessage(Message msg) {if(msg.what &#61;&#61; 1){adapter &#61; new NewsAdapter(getActivity(),newsList);lv.setAdapter(adapter);lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {&#64;Overridepublic void onItemClick(AdapterView parent, View view, int position, long id) {News news &#61; newsList.get(position);Intent intent &#61; new Intent(getActivity(),NewsDisplayActivity.class);intent.putExtra("news_url",news.getNewsUrl());startActivity(intent);}});}}};return main;}private void getNews(){new Thread(new Runnable() {&#64;Overridepublic void run() {try{for(int i &#61; 0;i<&#61;20;i&#43;&#43;) {Document doc&#61; Jsoup.connect("http://news.baidu.com/ns?word&#61;物联网&pn&#61;"&#43;Integer.toString(i)&#43;"0&cl&#61;2&ct&#61;0&tn&#61;news&rn&#61;20&ie&#61;utf-8&bt&#61;0&et&#61;0").get();Elements titleLinks&#61;doc.getElementsByClass("c-title");Elements timeLinks&#61;doc.getElementsByClass("c-author");for(int j&#61;0;j

  

转:https://www.cnblogs.com/HaoPeng19950304/p/6831155.html



推荐阅读
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了logistic回归(线性和非线性)相关的知识,包括线性logistic回归的代码和数据集的分布情况。希望对你有一定的参考价值。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 本文介绍了使用kotlin实现动画效果的方法,包括上下移动、放大缩小、旋转等功能。通过代码示例演示了如何使用ObjectAnimator和AnimatorSet来实现动画效果,并提供了实现抖动效果的代码。同时还介绍了如何使用translationY和translationX来实现上下和左右移动的效果。最后还提供了一个anim_small.xml文件的代码示例,可以用来实现放大缩小的效果。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文介绍了一个Java猜拳小游戏的代码,通过使用Scanner类获取用户输入的拳的数字,并随机生成计算机的拳,然后判断胜负。该游戏可以选择剪刀、石头、布三种拳,通过比较两者的拳来决定胜负。 ... [详细]
  • 本文介绍了C#中数据集DataSet对象的使用及相关方法详解,包括DataSet对象的概述、与数据关系对象的互联、Rows集合和Columns集合的组成,以及DataSet对象常用的方法之一——Merge方法的使用。通过本文的阅读,读者可以了解到DataSet对象在C#中的重要性和使用方法。 ... [详细]
  • javascript  – 概述在Firefox上无法正常工作
    我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • JVM 学习总结(三)——对象存活判定算法的两种实现
    本文介绍了垃圾收集器在回收堆内存前确定对象存活的两种算法:引用计数算法和可达性分析算法。引用计数算法通过计数器判定对象是否存活,虽然简单高效,但无法解决循环引用的问题;可达性分析算法通过判断对象是否可达来确定存活对象,是主流的Java虚拟机内存管理算法。 ... [详细]
author-avatar
阆中猫猫覀_648
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有