- 浏览: 364115 次
- 性别:
- 来自: 四川
文章分类
- 全部博客 (247)
- 数据库以及sql (11)
- java (48)
- 爬虫学习 (20)
- java编程 (28)
- python编程以及安装和配置 (27)
- oracle数据库 (32)
- mongodb基本操作 (4)
- linux学习 (7)
- easyUI (2)
- nodeJs (8)
- python学习 (16)
- 其他 (13)
- hadoop (1)
- svn (1)
- 汉字 (1)
- windows (2)
- jsp (5)
- fiddler (1)
- ETL (1)
- teamviewer (1)
- maven (4)
- GIT (2)
- datagrip (1)
- ocr (1)
- redis (3)
- mysql (3)
- linux (1)
- 数据服务 (0)
最新评论
package com.teamdev.jxbrowser.chromium.demoTest.jd427;
import java.awt.BorderLayout;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
import javax.swing.JFrame;
import javax.swing.WindowConstants;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import com.hyjx.orclJdbcUtil.JDBCUtils;
import com.teamdev.jxbrowser.chromium.Browser;
import com.teamdev.jxbrowser.chromium.BrowserPreferences;
import com.teamdev.jxbrowser.chromium.LoggerProvider;
import com.teamdev.jxbrowser.chromium.events.FinishLoadingEvent;
import com.teamdev.jxbrowser.chromium.events.LoadAdapter;
import com.teamdev.jxbrowser.chromium.swing.BrowserView;
public class sanya_good_num{
public static void main(String[] args) throws Exception {
LoggerProvider.getBrowserLogger().setLevel(Level.SEVERE);
LoggerProvider.getIPCLogger().setLevel(Level.SEVERE);
LoggerProvider.getChromiumProcessLogger().setLevel(Level.SEVERE);
//初始化Browser
final Browser browser = new Browser();
BrowserView browserView = new BrowserView(browser);
//禁止加载图片
BrowserPreferences preferences = browser.getPreferences();
preferences.setImagesEnabled(false);
preferences.setLoadsImagesAutomatically(true);
browser.setPreferences(preferences);
//Jframe初始化设置
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.add(browserView, BorderLayout.CENTER);
frame.setSize(800, 600);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
frame.setTitle("京东商品");
java.sql.Connection conOrcale = null;
try {
conOrcale = JDBCUtils.getConnection();
} catch (SQLException e1) {
e1.printStackTrace();
}
String sql = null;
PreparedStatement ps = null;
String sql1 = null;
Statement st2 = null;
ResultSet rs2 = null;
Document doc = null;
try {
sql1 = " select goodurl from z_sanya_jd_goodinfo where bad_num is null";
st2 = (java.sql.Statement) conOrcale.createStatement();
rs2 = st2.executeQuery(sql1);
} catch (Exception e) {
e.printStackTrace();
}
int i = 1;
for (; rs2.next();) {
System.out.println(i);
i++;
final String goodurl = rs2.getString("goodurl");
search(goodurl, frame, browser);
}
}
static void search(final String goodurl, JFrame frame, final Browser browser)throws Exception{
java.sql.Connection conOrcale = null;
try {
conOrcale = JDBCUtils.getConnection();
} catch (SQLException e1) {
e1.printStackTrace();
}
String sql = null;
PreparedStatement ps = null;
try {
sql = " update z_sanya_jd_goodinfo set bad_num = ? where goodurl = ? ";
ps = conOrcale.prepareStatement(sql);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("goodurl--------------》"+goodurl);
invokeAndWaitReady(browser, new Runnable() {
public void run() {
browser.loadURL(goodurl+"#comment");
}
});
// try {
// Thread.sleep(3000*1);
// } catch (InterruptedException e1) {
// e1.printStackTrace();
// }
String html = browser.getHTML();
Document document = Jsoup.parse(html);
String bad_num = "";
try {
bad_num = document.select("ul.filter-list li:eq(5) em").text();
} catch (Exception e) {
// TODO Auto-generated catch block
bad_num = "";
}
System.out.println("bad_num:"+bad_num+"\n下一个");
try {
ps.setString(1,bad_num);
ps.setString(2,goodurl);
ps.executeUpdate();
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
public static void invokeAndWaitReady(Browser browser, Runnable runnable) {
final CountDownLatch latch = new CountDownLatch(1);
LoadAdapter listener = new LoadAdapter() {
@Override
public void onFinishLoadingFrame(FinishLoadingEvent event) {
if (event.isMainFrame()) {
latch.countDown();
}
}
};
browser.addLoadListener(listener);
try {
runnable.run();
try {
if (!latch.await(60, TimeUnit.SECONDS)) {
//throw new RuntimeException(new TimeoutException());
}
} catch (InterruptedException ignore) {
ignore.printStackTrace();
Thread.currentThread().interrupt();
}
} finally {
browser.removeLoadListener(listener);
}
}
}
//点击
browser.executeJavaScriptAndReturnValue("document.getElementsByClassName('cities-group')[3].getElementsByTagName('dd')[0].getElementsByTagName('ul')[0].getElementsByTagName('li')[10].getElementsByTagName('a')[0].click();");
import java.awt.BorderLayout;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
import javax.swing.JFrame;
import javax.swing.WindowConstants;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import com.hyjx.orclJdbcUtil.JDBCUtils;
import com.teamdev.jxbrowser.chromium.Browser;
import com.teamdev.jxbrowser.chromium.BrowserPreferences;
import com.teamdev.jxbrowser.chromium.LoggerProvider;
import com.teamdev.jxbrowser.chromium.events.FinishLoadingEvent;
import com.teamdev.jxbrowser.chromium.events.LoadAdapter;
import com.teamdev.jxbrowser.chromium.swing.BrowserView;
public class sanya_good_num{
public static void main(String[] args) throws Exception {
LoggerProvider.getBrowserLogger().setLevel(Level.SEVERE);
LoggerProvider.getIPCLogger().setLevel(Level.SEVERE);
LoggerProvider.getChromiumProcessLogger().setLevel(Level.SEVERE);
//初始化Browser
final Browser browser = new Browser();
BrowserView browserView = new BrowserView(browser);
//禁止加载图片
BrowserPreferences preferences = browser.getPreferences();
preferences.setImagesEnabled(false);
preferences.setLoadsImagesAutomatically(true);
browser.setPreferences(preferences);
//Jframe初始化设置
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.add(browserView, BorderLayout.CENTER);
frame.setSize(800, 600);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
frame.setTitle("京东商品");
java.sql.Connection conOrcale = null;
try {
conOrcale = JDBCUtils.getConnection();
} catch (SQLException e1) {
e1.printStackTrace();
}
String sql = null;
PreparedStatement ps = null;
String sql1 = null;
Statement st2 = null;
ResultSet rs2 = null;
Document doc = null;
try {
sql1 = " select goodurl from z_sanya_jd_goodinfo where bad_num is null";
st2 = (java.sql.Statement) conOrcale.createStatement();
rs2 = st2.executeQuery(sql1);
} catch (Exception e) {
e.printStackTrace();
}
int i = 1;
for (; rs2.next();) {
System.out.println(i);
i++;
final String goodurl = rs2.getString("goodurl");
search(goodurl, frame, browser);
}
}
static void search(final String goodurl, JFrame frame, final Browser browser)throws Exception{
java.sql.Connection conOrcale = null;
try {
conOrcale = JDBCUtils.getConnection();
} catch (SQLException e1) {
e1.printStackTrace();
}
String sql = null;
PreparedStatement ps = null;
try {
sql = " update z_sanya_jd_goodinfo set bad_num = ? where goodurl = ? ";
ps = conOrcale.prepareStatement(sql);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("goodurl--------------》"+goodurl);
invokeAndWaitReady(browser, new Runnable() {
public void run() {
browser.loadURL(goodurl+"#comment");
}
});
// try {
// Thread.sleep(3000*1);
// } catch (InterruptedException e1) {
// e1.printStackTrace();
// }
String html = browser.getHTML();
Document document = Jsoup.parse(html);
String bad_num = "";
try {
bad_num = document.select("ul.filter-list li:eq(5) em").text();
} catch (Exception e) {
// TODO Auto-generated catch block
bad_num = "";
}
System.out.println("bad_num:"+bad_num+"\n下一个");
try {
ps.setString(1,bad_num);
ps.setString(2,goodurl);
ps.executeUpdate();
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
public static void invokeAndWaitReady(Browser browser, Runnable runnable) {
final CountDownLatch latch = new CountDownLatch(1);
LoadAdapter listener = new LoadAdapter() {
@Override
public void onFinishLoadingFrame(FinishLoadingEvent event) {
if (event.isMainFrame()) {
latch.countDown();
}
}
};
browser.addLoadListener(listener);
try {
runnable.run();
try {
if (!latch.await(60, TimeUnit.SECONDS)) {
//throw new RuntimeException(new TimeoutException());
}
} catch (InterruptedException ignore) {
ignore.printStackTrace();
Thread.currentThread().interrupt();
}
} finally {
browser.removeLoadListener(listener);
}
}
}
//点击
browser.executeJavaScriptAndReturnValue("document.getElementsByClassName('cities-group')[3].getElementsByTagName('dd')[0].getElementsByTagName('ul')[0].getElementsByTagName('li')[10].getElementsByTagName('a')[0].click();");
发表评论
-
采集ymx商品信息
2018-08-29 15:28 503public static void main(String[ ... -
根据百度加密url, 获取真实url
2018-08-06 10:46 0public static void main(String[ ... -
fiddler 抓取 手机https 数据包 完美解决
2018-08-03 12:43 3018转:https://jingyan.baidu.com ... -
无忧代理IP
2018-07-30 16:19 0http://api.ip.data5u.com/dynami ... -
无所不能的四种请求方式(天下武功为怪不破)
2018-07-26 11:50 836package com.teamdev.jxbrowser.c ... -
post请求加json参数方式二
2018-07-24 14:02 1969package com.teamdev.jxbrowser.c ... -
post请求加json参数或xml参数
2018-07-20 18:21 1249import java.io.BufferedReader; ... -
jd编号
2017-11-02 17:59 502京东店铺:https://mall.jd.com/index- ... -
清除google缓存
2017-10-26 11:20 6241.进入 chrome://net-internals/#dn ... -
adb server is out of date. killing... 本地连接夜神模拟器失败、超时
2017-06-19 10:43 1497原因:1.模拟器器设置了代理;2.主要是模拟器和sdk 的ad ... -
fiddler抓取的https请求 数据乱码问题解决方案
2017-06-09 09:44 7201参考地址:http://blog.csdn.net/SomeO ... -
chrome 禁止加载网页图片 解决办法
2017-05-25 11:18 23261.在谷歌浏览器中输入:chrome://settings/c ... -
开源爬虫框架的优缺点?
2017-03-22 14:46 796开源爬虫框架各有什么优缺点? 作者:老夏 开发网络爬 ... -
反爬虫
2017-03-17 10:34 6711. 伪装user agent User agen ... -
爬虫被封禁原因
2017-03-17 09:37 1517爬虫被封禁常见原因 1. ... -
App数据抓取
2017-03-17 09:32 1065思路: 通过fiddler抓包 ... -
八爪鱼规则学习
2017-03-08 13:44 8241.八爪鱼采集器是任何一个需要从网页获取信息的人都必备的采集工 ... -
java模拟jquery请求动作(模拟点击、选择下拉)
2016-12-29 14:40 4026package com.teamdev.jxbrowser.c ... -
httpclient
2016-11-01 16:37 745package com.teamdev.jxbrowser.c ... -
jsoup + json 解析网页
2016-11-01 16:25 1269package com.teamdev.jxbrowser.c ...
相关推荐
org.chromium.chrome.browser.base.SplitChromeApplication.apk
org.chromium.chrome.browser.base.SplitChromeApplication.apk.1
SwitchyOmega_Chromium.crx
SwitchyOmega_Chromium.zip
git 地址 https://github.com/maketechnology/chromium.swt
LICENSES.chromium
org.chromium.Chromium.Extension org.chromium.Chromium.NativeMessagingHost ChromeChrome组织政策 此扩展点可用于配置自定义Chromium策略,当前位于版本“ 1”上,并将使Chromium可用的policies/managed和...
webrtc gclient git git-1.9.5.chromium.5_bin.zip
eclipse安装vue报错所需jar eclipse安装vue报错所需jar eclipse安装vue报错所需jar eclipse安装vue报错所需jar
XDM
SwitchyOmega_Chromium.rar
SwitchyOmega_Chromium.crx v2_5_20 github最新版 存在百度云网盘了,需要的可以下载
chromium-linux.zip
相信很多同学会碰都使用depot_tools被墙,而又无法下载相关文件。 附件中提供目前该工具需要的git文件版本,下载后,将文件... 之后修改depot_tools\bootstrap\win\win_tools.bat文件,修改下载目录,即可解决该问题。
Chrome最好的广告拦截器之一,相比同类扩展,这款的速度更快,资源消耗更低,需要EDGE版本的直接去Windows应用商店下载最新版,2020-10-20发布,
导入到谷歌插件就行了,不会的百度一下谷歌怎么导入插件 SwitchyOmega_Chromium
编译版本: Build Revision: 595286 (https://chromium.googlesource.com/chromium/src/+/8e249e73fc18350dea393cecc8d344a5a355c1d6) 官方下载地址: 1. 最新: https://chromium.woolyss.com/download/en/ 2. ...
linux版本的chromium浏览器,一键安装,支持debian,ubuntu,deepin等-------------------------------------------------------