import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Demoppp {
    public static List<String> getTagTitile_Wenzi(String content)
    {
        String regex ="title="+'"'+"[^=]+"+'"';
        Pattern pa = Pattern.compile(regex);
        Matcher ma = pa.matcher(content);
        List<String> list = new ArrayList<String>();
        while (ma.find()) {
            list.add(ma.group());
        }
        return list;
        
        
    }

public static List<String> getTagA_WenZi(String content)
    {
        
        String regex = "<a.*?</a>";
        Pattern pa = Pattern.compile(regex);
        Matcher ma = pa.matcher(content);
        List<String> list = new ArrayList<String>();
        while (ma.find()) {
            list.add(ma.group());
        }
        return list;
        
    }
    
    
    public static void main(String[] args) throws IOException {
        String surl="http://login.kaixin001.com/";
        URL url=new URL(surl);
        HttpURLConnection connectionss=(HttpURLConnection) url.openConnection();
        connectionss.setDoOutput(true);
        OutputStreamWriter out=new OutputStreamWriter(connectionss.getOutputStream(),"utf-8");
        out.write("email=619617021@qq.com&password=4565892");//Post关键所在
        out.flush();
        out.close();
        String cookieVal = connectionss.getHeaderField("Set-Cookie");
        String url2="http://www.kaixin001.com/photo/albumlist.php";
        URL url3=new URL(url2);
        HttpURLConnection connectionsf=(HttpURLConnection) url3.openConnection();
        if (cookieVal!=null) {
            connectionsf.setRequestProperty("Cookie", cookieVal);
        }
            
        connectionsf.connect();
        InputStream urlStream=connectionsf.getInputStream();
        BufferedReader bk=new BufferedReader(new InputStreamReader(urlStream,"utf-8"));
        String  ss = null;  
        String total = "";
        while ((ss=bk.readLine())!=null) {
            
            total+=ss;
        }
        //System.out.println(total);
        
        List<String> TVALUE=getTagTitile_Wenzi(total);
        for (int i = 0; i < TVALUE.size(); i++) {
            String aString=TVALUE.get(i).replaceAll("[\\w]+|="+"|"+'"',"").trim();
            System.out.println(aString);
        }
        
    System.out.println("a标签的东西");
    List<String> aTagString=getTagA_WenZi(total);
    for (int i = 0; i < aTagString.size(); i++) {
        
        String aString=aTagString.get(i).replaceAll("<[^>]+>","").trim();
        
        System.out.println(aString);
    
    }
    }
    
}

java模拟用户登录(排除没有验证码情况下,抓取网页信息)的更多相关文章

  1. 模拟用户登录,内含验证码验证和request等操作

    模拟用户登录,内含验证码验证和jsp等操作 1.案例需求: 1. 访问带有验证码的登录页面login.jsp 2. 用户输入用户名,密码以及验证码. * 如果用户名和密码输入有误,跳转登录页面,提示: ...

  2. HttpClient(二)-- 模拟浏览器抓取网页

    一.设置请求头消息 User-Agent模拟浏览器 1.当使用第一节的代码 来 访问推酷的时候,会返回给我们如下信息: 网页内容:<!DOCTYPE html> <html> ...

  3. java.net.URL 模拟用户登录网页并维持session

    java.net.URL 模拟用户登录网页并维持session 半成品,并非完全有用 import java.io.BufferedReader; import java.io.InputStream ...

  4. java.net.URL 模拟用户登录网页并维持session【转】

    java.net.URL 模拟用户登录网页并维持session 半成品,并非完全有用 import java.io.BufferedReader; import java.io.InputStream ...

  5. Redis缓存Mysql模拟用户登录Java实现实例[www]

    Redis缓存Mysql模拟用户登录Java实现实例 https://jingyan.baidu.com/article/09ea3ede1dd0f0c0aede3938.html redis+mys ...

  6. xpath技术解析xml以及案例模拟用户登录效果

    问题:当使用dom4j查询比较深的层次结构的节点(标签,属性,文本),比较麻烦!!! xpath就在此情况下产生了--主要是用于快速获取所需的[节点对象]. 在dom4j中如何使用xPath技术 1) ...

  7. 运用String类实现一个模拟用户登录程序

    package Test; import java.util.Scanner; // 模拟用户登录程序 // 思路: // 1.用两个String类分别接收用户名和密码 // 2.判断输入的用户名和密 ...

  8. jdbc封装模拟用户登录

    dao层 接口 package com.qu.dao; public interface ILoginDAO { /** * 模拟用户登录 * 验证用户名 密码是否正确 * select * from ...

  9. python 初学习 模拟用户登录

    #!/usr/bin/env python#coding:utf-8''' 2017年8月19日 模拟用户登录,userfile 文件保存字典 用户名,和密码 sorryname 文件保存字典 登录过 ...

随机推荐

  1. EmEditor处理大文本文件

    前段时间新闻网由于用户不当操作.导致三年的报纸栏目内容全部清空.紧急情况下只能求助于SQL数据恢复.但备份的数据文件有500M左右. 首先用的文本编辑器是Notepad++,打开之后软件几乎完全卡死. ...

  2. centos7 关闭SELINUX 防火墙

    关闭SELINUXvi /etc/selinux/config#SELINUX=enforcing #注释掉#SELINUXTYPE=targeted #注释掉SELINUX=disabled #增加 ...

  3. Hibernate常用配置文件详解

    本文转载自:http://blog.csdn.net/csh624366188/article/details/7578939 初学hibernate的童鞋,刚开应该都有这种感觉,hibernate的 ...

  4. [mysql] mysql explain 使用

    explain显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. 先解析一条sql语句,看出现什么内容 EXPLAINSELECTs.uid, ...

  5. js 删除DropDownList的选项

    function del_DropDownList_Option() {            var   ddlXZ=  document.getElementById("name&quo ...

  6. IOS开发—数据库的使用

    1.首先封装方法(建一个DataBase类封装) 2.实现DataBase类的方法 3.第一步先建立一个表 4.进行插入.删除.更新 插入的sql语句:@"insert into user ...

  7. ICSharpCode.SharpZipLib.dll,MyZip.dll,Ionic.Zip.dll 使用

    MyZip.dll : 有BUG,会把子目录的文件解压到根目录.. ICSharpCode.SharpZipLib.dll: 把ICSharpCode.SharpZipLib.dll复制一份,重命名为 ...

  8. poj2352消防站

    题目大意:有n个点的一棵树,每个点有两个值:w和c.现在要在其中若干点建立消防站,使得每个点到最近的消防站的距离不超过该点的c值,i点建立消防站的费用为w.求最小费用. 分析:本题显然是树型Dp.定义 ...

  9. Tomcat的startup.bat一闪而过问题的解决

    问题描述:点击Tomcat的startup.bat,一闪而过. 问题分析: 1.Tomcat的startup.bat--->catalina.bat--->setclasspath.bat ...

  10. for语句的用法

    #!/bin/bashfor i in 1 2 3 4 5 6do echo $idone 看文件 #!/bin/bashdir=$(ls /etc) for i in $dirdo echo $id ...