当前位置: 首页>后端>正文

Kotlin采集美团商家信息 同行竞争价格监控

“南方小土豆”挤爆哈尔滨旅游市场,一个冬天让哈尔滨火出了圈,让全国观众看见了不一样的逆向旅游热,虽说我心驰神往,但是无奈加班敲代码,连休息的时间都没有。前段时间我通过用java写了一个美团爬虫程序,今天我 利用java的Kotlin库来写个美团商家爬虫,监控同行价格信息,并做出对比,了解同行竞争对手的信息。

爬虫程序的代码和步骤如下:

Kotlin采集美团商家信息 同行竞争价格监控,第1张

每行代码的解释如下:

1、val proxyHost = "duoip":指定代理服务器的地址为 duoip。

2、val proxyPort = 8000:指定代理服务器的端口为 8000。

3、val url = URL("meituan"):指定要爬取的网址为 meituan。

4、val proxy = Proxy(Proxy.Type.HTTP, java.net.InetSocketAddress(proxyHost, proxyPort)):创建一个代理对象,指定代理类型为 HTTP,代理地址为 duoip,代理端口为 8000。

5、val connection = URL(url).openConnection():创建一个 URLConnection 对象,指定要连接的网址为 meituan。

6、connection.setRequestProperty("Proxy-Connection", "Keep-Alive"):设置请求头的 "Proxy-Connection" 为 "Keep-Alive",表示连接应该在请求完成后保持打开状态。

7、connection.setRequestProperty("User-Agent", "Mozilla/5.0"):设置请求头的 "User-Agent" 为 "Mozilla/5.0",表示客户端使用的浏览器类型。

8、connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"):设置请求头的 "Content-Type" 为 "application/x-www-form-urlencoded",表示请求主体的类型。

9、connection.setRequestProperty("Accept-Language", "zh-CN,zh;q=0.8,en;q=0.6"):设置请求头的 "Accept-Language" 为 "zh-CN,zh;q=0.8,en;q=0.6",表示客户端接受的语言。

10、val cookieParams = connection.getHeaderFields().get("Cookie").split(","):获取响应头中的 "Cookie",并以 "," 分割,得到一个字符串数组。

11、if (cookieParams.isNotEmpty()) { connection.setRequestProperty("Cookie", cookieParams.joinToString("; ")) }:如果 "Cookie" 不为空,设置请求头的 "Cookie" 为字符串数组中的元素,以 "; " 分隔。

12、connection.connect():建立连接。

13、connection.responseCode:获取服务器返回的状态码。

上面就是全部的代码内容了,介绍的很详细,也许有一些不完善的地方,欢迎大佬随时指正,不说了,已经买好了去哈尔滨的机票了,趁着热度未减,我也当一回南方的小土豆,看看美丽的哈尔滨冰雪世界。


https://www.xamrdz.com/backend/3xr1930991.html

相关文章: