Java抓取商城商品信息教程:轻松实现数据迁移
如何用java实现抓取商城商品信息到自己的页面上来!!! 求解啊,大神们!!
我还没有对加密网站进行过任何研究,我不知道它们是否可以被黑客攻击。当我刚开始写作时,我以为我可以抓取很多页面,但我发现其中很多页面都被加密了。
我以为有些地址可以通过网页检测工具检测到它们的数据变化,但是我只能通过js显示检测到一些数据,而且仍然无法抓取加密的页面。
你好,这个问题我们稍后再讨论。
[java]importjava.net.*;importjava.io.*;importjava.util.regex.*;publicclassCapture{publicstaticvoidmain(Stringargs[])throwsException{System.out.println("************ ** **************** 手机号码搜索 ************ System.out.println("我的位置是:"+newGrabMobile() .grabMobileLocation("15023141745"));System.out.println("手机 卡类型为:"+newGrabMobile().grabMobileType("15023141745")); 邮政编码为:"+newGrabMobile().grabMobilePost("15023141745")); Reason.out.println("************************身份证明查询**************** ** **********"); .grabIdentitySex ( " System. System.out.println("我的国家是:"+newGrabIdentity(). ); } } classGrabMobile{ publicStringgrabMobileLocation(Stringm) 异常{ StringstrUrl="https://www.ip138.com:8080/ search.asp?action=mobile&mobile="+m;URLurl=newURL(strUrl);HttpURLConnectionhtt pUrlCon=(HttpURLConnection)url.openConnection();InputStreamReaderinRead=newInputStreamReader(httpUrlCon.getInputStream(),"GBK"); f=newStringBuffer();Stringline="";while((line=bufRead.readLine())!= null){ strBuf.append(line);}StringstrStart="卡号属性";StringstrEnd="卡类型";StringstrAll=strBuf.toString();intstart=strAll.indexOf(strStart ); //www.ip138.com:8080/search.asp?action=mobile&mobile="+m;URLurl=newURL(strUrl);HttpURLConnectionhttpUrlCon=(HttpURLConnection)url.openConnection();InputStreamReaderinRead=newInputStreamReader(h ttpUrlCon.getInputStream(),"GBK");BufferedReaderbufRead=newBufferedReader(inRead);StringBufferstrBuf=newStringBuffer();Stringline="";while((line=bufRead.readLine())!=null){ strBuf.append(line );} StringstrStart="卡片类型";StringstrEnd="
Linux中的wget网络下载命令使用全解
语法:wget[options] [URL]
使用短选项时也需要长选项所需的参数。
开始: -V, --version 查看Wget版本信息并退出。
-h, --help 打印此帮助。
-b, --background 启动后切换到后台。
-e, --execute=COMMAND 执行“.wgetrc”样式命令。
日志和输入文件:-o, --output-file=FILE 将日志信息写入FILE。
-a,--append-output=FILE 将信息添加到 FILE 中。
-d, --debug 打印大量调试信息。
-q, --quiet 安静模式(无信息输出)。
-v, --verbose 详细输出(这是默认值)。
-nv, --no-verbose 禁用详细输出,但不切换到安静模式。
-i,--input-file=FILE 将 URL 下载到本地或外部 FILE。
-F, --force-html 将输入文件视为 HTML 文件。
-B, --base=URL 解析与 URL 关联的输入 HTML 文件(由 -i-F 选项指定)。
--config=FILE指定要使用的配置文件。
下载: -t, --tries=NUMBER 将重试次数设置为 NUMBER(0 表示无限制)。
--retry-connrefused 即使连接被拒绝也重试。
-O,--output-document=FILE 将文档写入文件。
-nc,--no-clobber 跳过下载到现有文件的下载(它们被覆盖)。
-c,--继续下载文件。
--progress=TYPE 选择进度条类型。
-N, --timestamping 仅检索比本地文件更新的文件。
--no-use-server-timestamps 设置本地文件在服务器上没有时间戳。
-S, --server-response 打印服务器响应。
--spider 不下载文件。
-T,--timeout=SECONDS 将所有超时设置为 SECONDS 秒。
--dns-timeout=SECS 将 DNS 查找超时设置为 SECS 秒。
--connect-timeout=SECS 将连接超时设置为 SECS 秒。
--read-timeout=SECS 将读取超时设置为 SECS 秒。
-w,--wait=SECONDS 等待间隔为 SECONDS 秒。
--waitretry=SECONDS 1..SECONDS 重试检索文件时等待几秒。
--random-wait 捕获多个文件时,每次随机等待间隔为 0.5*WAIT 1.5*WAIT 秒。
--no-proxy 禁用代理的使用。
-Q, --quota=NUMBER 将捕获配额设置为 NUMBER 个字节。
--bind-address=ADDRESS 绑定到本地主机上的地址(主机名或 IP)。
--limit-rate=RATE 将下载速率限制为 RATE。
--no-dns-cache 禁用 DNS 查找缓存。
--restrict-file-names=OS 将文件名中的字符限制为操作系统允许的字符。
--ignore-case 匹配文件/目录时忽略大小写。
-4,--inet4-only 仅连接到 IPv4 地址。
-6,--inet6-only 仅连接到 IPv6 地址。
--pre fer-family=FAMILY 首先连接到指定协议的地址。
FAMILY 是 IPv6、IPv4 或无。
--user=USER 将 FTP 和 http 的用户名设置为 USER。
--password=PASS 将 FTP 和 http 的密码设置为 PASS。
--ask-password 提示输入密码。
--no-iri 关闭 IRI 支持。
--local-encoding=ENCIRI(国际化资源标识符)使用ENC作为本地编码。
--remote-encoding=ENC 使用 ENC 作为默认远程编码。
--unlinkremovefilebeforeclobber。
目录:-nd、--no-directories 不创建目录。
-x, --force-directories 强制创建目录。
-nH,--no-host-directories 不要创建主目录。
--protocol-directories 在目录中使用协议名称。
-P, --directory-pre fix=PREFIX 将文件保存为 PREFIX/ --cut-dirs=NUMBER NUMBER忽略远程目录中的目录级别。
HTTP 选项: --http-user=USER 将 HTTP 用户名设置为 USER。
--http-password=PASS 将 http 密码设置为 PASS。
--no-cache 不要在服务器上缓存数据。
--default-page=NAME 更改默认页面(默认页面通常是“index.html”)。
-E, --adjust-extension 使用适当的扩展名保存 HTML/CSS 文档。
--ignore-length 忽略标头的 Content-Length 字段。
--header=STRING 将 STRING 放入标头中。
--max-redirect 每页允许的最大重定向。
--proxy-user=USER 使用 USER 作为代理用户名。
--proxy-password=PASS 使用 PASS 作为代理密码。
--referer=URL 在 HTTP 请求标头中包含“Referer:URL”。
--save-headers 将 HTTP 标头保存到文件中。
-U,--user-agent=AGENT 被标识为 AGENT 而不是 Wget/VERSION。
--no-http-keep-alive 禁用 HTTPkeep-alive(持久连接)。
--no-cookies 不使用cookie。
--load-cookies=FILE 在启动会话之前从 FILE 加载 cookie。
--save-cookies=FILE 会话结束后将 cookies 保存到 FILE 中。
--keep-session-cookies 加载并存储会话 cookie(非持久 cookie)。
--post-data=STRING 使用 POST 方法;STRING 作为数据发送。
--post-file=FILE 使用POST方法; 发送 FILE 。
--content-disposition 选择本地文件名时允许处置标头(仍处于实验阶段)。
--auth-no-challenge 在第一次等待时发送基本 HTTP 身份验证信息,无需服务器质询。
HTTPS (SSL/TLS) 选项: --secure-protocol=PR 选择安全协议,可以是 Auto、SSLv2、SSLv3 或 TLSv1。
--no-check-certificate 不检查服务器的证书。
--certificate=FILE 客户端证书文件。
--certificate-type=TYPE 客户端证书类型、PEM 或 DER。
--private-key=FILE 私钥文件。
--private-key-type=TYPE 私钥文件类型,PEM 或 DER。
--ca-certificate=FILE 包含一组 CA 认证的文件。
--ca-directory=DIR 存储 CA 认证哈希列表的目录。
--random-file=FILE 用于生成 SSLPRNG 的随机数据文件。
--egd-file=FILE 用于以随机数据命名EGD套接字的文件。
FTP 选项:--ftp-user=USER 将 FTP 用户名设置为 USER。
--ftp-password=PASS 将 FTP 密码设置为 PASS。
--no-remove-listing 不要删除“.listing”文件。
--no-glob 不要在 FTP 文件名中使用通配符扩展名。
--no-passive-ftp 禁用“被动”传输模式。
--retr-symlinks 当递归到目录时,检索链接的文件(而不是目录)。
递归下载:-r, --recursive 指定递归下载。
-l, --level=NUMBER 最大递归深度(inf 或 0 表示无限制,即所有下载)。
--delete-after 下载完成后删除本地文件。
-k, --convert-links 使下载的 HTML 或 CSS 代码中的链接指向本地文件。
-K, --backup-converted 在转换文件 X 之前将其备份为 X.orig。
-m,--mirror-N-r-linf--no-remove-listing 的缩写。
-p, --page-requirements 下载所有元素,例如 B. 用于显示 HTML 页面的图像。
--strict-comments 以严格的方式处理 HTML 注释 (SGML)。
递归接受/拒绝:-A, --accept=LIST 逗号分隔的可接受扩展名列表。
-R,--reject=LIST 以逗号分隔的要拒绝的扩展名列表。
-D,--domains=LIST 以逗号分隔的允许域列表。
--exclude-domains=LIST 以逗号分隔的要排除的列表域。
--follow-ftp 跟踪 HTML 文档中的 FTP 链接。
--follow-tags=LIST 要遵循的以逗号分隔的 HTML 标记列表。
--ignore-tags=LIST 要忽略的以逗号分隔的 HTML 标记列表。
-H,--span-hosts 在递归时重定向到外部主机。
-L, --relative 只跟踪相关链接。
-I,--include-directories=LIST 允许的目录列表。
--trust-server-names 使用由theredirectionurllast 组件指定的名称。
-X,--exclude-directories=LIST 排除目录的列表。
-np,--no-parent 不回溯到父目录。
应用示例: 1.下载单个文件
复制代码如下:wgeturl+filename 下载过程中可以看到下载的四个信息的比例,下载的大小,以及当前下载速度、剩余时间。2. 使用大写O 作为参数指定“另存为复制代码”。
代码如下: wget-Osave_nameurl 该方法适用于对应链接中没有显式文件名的情况。
3.指定下载速率并复制代码如下:wget--limit-ratewget-limit-rate=200kurl+filename4。
断点下载 wget -c 中途完成下载,Ctrl+C 暂停,继续下载。
您可以添加 -c 参数。
注意:如果不加-c,下载的文件会有额外的.1后缀。
5、后台下载添加-b参数,复制代码如下:wget-burl/filename为后台下载,下载操作写入wget-log文件。
使用复制的代码,如下所示:tail-fwget-log 查看下载日志。
6.在浏览器下模拟下载。
有些网站不允许客户在非浏览器环境中下载。
使用 --user-agent 设置复制代码。
代码如下: wget --user-agent="Mozilla/5.0(X11;U;Linuxi686;en-US;rv:1.9.0.3)G ecko/2008092416Firefox/3.0.3"URL-TO-DOWNLOAD7. 测试下载链接方法:当尝试使用--spider安排下载时,必须首先检查下载链接是否有效。
复制代码如下: wget--spiderDOWNLOAD-URL 如果返回OK,则说明下载链接正确。
8、如何增加尝试次数:复制代码如下: --tries=1000 如果网速有问题,下载大文件时可能会出错,默认情况下wget会尝试连接20次。
如果您尝试了 75 次,您可以复制如下代码: wget--tires=75DOWNLOAD-URL9 要下载多个文件,请使用 wget-i 将多个下载链接写入 download-file-list.txt 文件。
,然后复制如下代码: wget-idownload-file-list.txt10 下载整个站点:使用 --mirror 参数。
如果要下载完整站点并启用本地浏览,请复制如下代码:wget--m error-p--convert-links-P./LOCAL-DIRWEBSITE-URL 参数说明: --mirror:设置此参数创建本地镜像 -p:下载所有适合显示元素的HTML文件 --con vert-links:下载完成后,将所有文档链接转换为本地。
-P./LOCAL-DIR:保存指定文件夹中的所有文件和目录。
11.例如,在下载时,禁止下载某些类型的文件。
在下载网站时,不要打算下载动画GIF图像。
复制代码如下:wget--reject=gif待下载网站 12. 日志下载方法:使用小写o复制代码如下:wget-oxx.html.log-Oxx.html"https://ip138.com/ips.asp?ip=58.251.193.137&action =2"查看日志:复制代码如下:[root @localhostopt]#catxx.html.log--2010-07-1211:57:22--https://ip138.com/ips.asp?ip=58.251.19 3.137&action=2 主机 ip138.com 221.5.47.136Connectingtoip138.com|221.5.47.136|:80 连接正在解决。
HTTP 请求已发送,等待响应 200OK 长度:7817(7.6K)[text/html]保存直到:`xx.html'0K .100%65.5K=0.1s2010-07-1211 :57 : 22 (65.5 KB/s)-`xx.html'saved[7817/7817] 13. 它是一个扩展 第9条的版本。
可以限制下载容量,复制代码如下: wget-Q5m-iFILE-WHICH-HAS-URLS 当下载的文件达到5兆时,停止下载。
注意:如果不是文件下载链接列表而是单个文件,则此限制不适用。
14. 与第 11 点不同,本技巧仅涉及下载特定类型的文件。
下载代码如下:wget-r-A.pdfhttps://url-to-webpage-with-pdfs/15。
使用wget完成FTP下载。
复制如下代码:wgetftp-url。
如果需要输入用户名和密码,复制代码如下: wget--ftp-user=USERNAME--ftp-password=PASSWORDDOWNLOAD-URL
电信宽带拨号的公网IP和ip138公网ip不一致,需要做端口映射公网到私网
如果您发现通过电信宽带拨号获取的公网IP与ip138.com上显示的不符,需要将公网IP映射到私网服务,这里有一些解决步骤。首先,了解内网和公共IP之间的区别很重要。
通常以 10.x.x.x 开头的 IP 地址是内部 IP,而不是公共 IP。
如果拨号后收到的IP地址以100开头,则说明您当前已连接到内网。
解决这个问题通常涉及两个方面: 1.联系运营商:您可以联系您的互联网服务提供商,特别是如果您已经订阅了高速宽带服务(例如1000M)。
您的移动提供商也许能够为您提供公共 IP 地址。
即使是500M套餐,您也可以与客服或装维经理沟通,查看是否可以获取公网IP,以便直接访问公网。
2、使用内网映射服务:如果运营商无法提供公网IP,可以使用花生壳等知名服务等内网映射工具。
这些工具可以将您的内部 IP 地址映射到可公开访问的域名。
该域名可以让您在公网上访问您的私网服务,而无需担心IP地址冲突。
在选择地图服务时,一定要选择信誉良好的提供商,以保证数据安全和服务稳定性。
使用此类工具时,请遵循官方设置指南,其中通常包括安装客户端软件和配置端口映射规则等步骤。
综上所述,无论采用哪种方式,关键是要保证您的私网服务可以通过公网访问。
如果配置得当,即使在内网环境中,您也可以无缝访问公共网络。
如果您在设置过程中遇到任何困难,可以查阅相关教程或寻求专业帮助。
相关推荐

解析机械能:动能、势能及其相互转换
物理学中势能是什么?性质。势能是由相互作用力为保守力的物体组成的系统的能量。由于势能是由组成系统的物体之间的相对位置决定的,而相对位置也称为情况,所以称为势能

探索组词奥秘组词惠带你轻松学用词汇
惠的拼音组词部首答案:拼音:hui;部首的:心;词组:hiqun、惠顾、惠吉、惠林、惠丰、惠盛、惠侨、惠教、惠丽、惠康、惠琪、惠利、惠叔叔、惠润、惠邮、惠安、惠健、优惠券、折扣码、

逻辑学探秘:从古希腊到现实生活的思维规律解读
《逻辑学是什么》读后感《什么是逻辑》从古希腊和中国史前时期的一些争论和命题开始,解释逻辑是人类理性的自我反思。第一章给出了很多来自中国和西方的简单例子,我觉得很

优雅网名推荐:创意昵称精选,打造个性空间
好听的网名昵称高雅以下是我的一些创造优雅、甜美的网络名字和昵称的建议:1.黎明:象征着希望和新的开始。2、寂静:指平和、安静,给人以平和、美好的感觉。3、