Compare commits
No commits in common. "92240b981979f28382b7ba6ae7e22c8f038775d2" and "d7fdb48b4a8b44147cdf02216de2039559c205eb" have entirely different histories.
92240b9819
...
d7fdb48b4a
@ -1,230 +0,0 @@
|
||||
package rasel.lunar.launcher.model
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.content.Context
|
||||
import androidx.work.Worker
|
||||
import androidx.work.WorkerParameters
|
||||
import com.google.gson.Gson
|
||||
import org.json.JSONObject
|
||||
import org.jsoup.Jsoup
|
||||
import org.jsoup.nodes.Document
|
||||
import rasel.lunar.launcher.home.LauncherHome.Companion.rssSet
|
||||
import rasel.lunar.launcher.todos.Root
|
||||
import rasel.lunar.launcher.todos.RssDataItem
|
||||
import rasel.lunar.launcher.todos.RssDataType
|
||||
import rasel.lunar.launcher.todos.RssFeedsParser
|
||||
import rasel.lunar.launcher.utils.BLog
|
||||
import rasel.lunar.launcher.utils.RssList
|
||||
import rasel.lunar.launcher.utils.RssList.feedJsons
|
||||
import rasel.lunar.launcher.utils.beforeDay
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Date
|
||||
|
||||
|
||||
class DCGetter : Worker {
|
||||
companion object {
|
||||
val TAG = "DCGetter"
|
||||
}
|
||||
constructor(context: Context, workerParams: WorkerParameters) : super(context, workerParams) {
|
||||
|
||||
}
|
||||
|
||||
fun parseDcLi(dc_li : org.jsoup.nodes.Element) : ArrayList<RssDataItem>{
|
||||
var temp = arrayListOf<RssDataItem>()
|
||||
if (dc_li.html().contains("<ul class=>") && dc_li.html().contains("con_list img")) {
|
||||
dc_li.child(0).getElementsByTag("li").forEach {
|
||||
parseDcLi(it)
|
||||
}
|
||||
} else {
|
||||
var link = if (dc_li.getElementsByTag("a").size > 0) dc_li.getElementsByTag("a").get(0)
|
||||
.attr("href") else ""
|
||||
var title =
|
||||
if (dc_li.getElementsByClass("box besttxt").size > 0) dc_li.getElementsByClass("box besttxt")
|
||||
.get(0)
|
||||
.text() else if (dc_li.getElementsByClass("tit").size > 0) dc_li.getElementsByClass(
|
||||
"tit"
|
||||
).get(0).text() else ""
|
||||
var thumbnail =
|
||||
if (dc_li.getElementsByTag("img").size > 0) dc_li.getElementsByTag("img").get(0)
|
||||
.attr("src") else ""
|
||||
var desc =
|
||||
if (dc_li.getElementsByClass("box best_info").size > 0) dc_li.getElementsByClass("box best_info")
|
||||
.get(0).text() else ""
|
||||
var dateTiem =
|
||||
if (dc_li.getElementsByClass("time").size > 0) dc_li.getElementsByClass("time")
|
||||
.get(0).text() else ""
|
||||
link = link.replace("&","&")
|
||||
thumbnail = thumbnail.replace("&","&")
|
||||
BLog.LOGE("DC_LI >>>> link >>>> ${link}")
|
||||
BLog.LOGE("DC_LI >>>> title >>>> ${title}")
|
||||
BLog.LOGE("DC_LI >>>> thumbnail >>>> ${thumbnail}")
|
||||
BLog.LOGE("DC_LI >>>> desc >>>> ${desc}")
|
||||
BLog.LOGE("DC_LI >>>> dateTiem >>>> ${dateTiem}")
|
||||
if (title.length > 0 && link.length > 0) {
|
||||
DcInside().apply {
|
||||
this.link = link
|
||||
this.title = title
|
||||
this.thumbnail = thumbnail
|
||||
this.desc = desc
|
||||
this.dateTiem = dateTiem
|
||||
}.apply {
|
||||
temp.add(this)
|
||||
}
|
||||
}
|
||||
}
|
||||
return temp
|
||||
}
|
||||
|
||||
@SuppressLint("RestrictedApi")
|
||||
override fun doWork(): Result {
|
||||
|
||||
var tempArray = arrayListOf<RssDataItem>()
|
||||
|
||||
try {
|
||||
val testUrl2 = "https://www.dcinside.com/"
|
||||
Jsoup.connect(testUrl2).userAgent("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15").get().let { dc ->
|
||||
// BLog.LOGE("test ${testUrl2} >> ${this}")
|
||||
dc.getElementsByTag("li").forEach { dc_li ->
|
||||
if (dc_li.html().contains("main_log") == true) {
|
||||
parseDcLi(dc_li).apply {
|
||||
tempArray.addAll(this)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (e:Exception){e.printStackTrace()}
|
||||
return tempArray.forEach {
|
||||
rssSet.put(it.originPage(),it)
|
||||
}.run {
|
||||
Result.success()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
fun parseDcLi(dc_li : org.jsoup.nodes.Element) : ArrayList<RssDataItem>{
|
||||
var temp = arrayListOf<RssDataItem>()
|
||||
if (dc_li.html().contains("<ul class=>") && dc_li.html().contains("con_list img")) {
|
||||
dc_li.child(0).getElementsByTag("li").forEach {
|
||||
parseDcLi(it)
|
||||
}
|
||||
} else {
|
||||
var link = if (dc_li.getElementsByTag("a").size > 0) dc_li.getElementsByTag("a").get(0)
|
||||
.attr("href") else ""
|
||||
var title =
|
||||
if (dc_li.getElementsByClass("box besttxt").size > 0) dc_li.getElementsByClass("box besttxt")
|
||||
.get(0)
|
||||
.text() else if (dc_li.getElementsByClass("tit").size > 0) dc_li.getElementsByClass(
|
||||
"tit"
|
||||
).get(0).text() else ""
|
||||
var thumbnail =
|
||||
if (dc_li.getElementsByTag("img").size > 0) dc_li.getElementsByTag("img").get(0)
|
||||
.attr("src") else ""
|
||||
var desc =
|
||||
if (dc_li.getElementsByClass("box best_info").size > 0) dc_li.getElementsByClass("box best_info")
|
||||
.get(0).text() else ""
|
||||
var dateTiem =
|
||||
if (dc_li.getElementsByClass("time").size > 0) dc_li.getElementsByClass("time")
|
||||
.get(0).text() else ""
|
||||
link = link.replace("&","&")
|
||||
thumbnail = thumbnail.replace("&","&")
|
||||
BLog.LOGE("DC_LI >>>> link >>>> ${link}")
|
||||
BLog.LOGE("DC_LI >>>> title >>>> ${title}")
|
||||
BLog.LOGE("DC_LI >>>> thumbnail >>>> ${thumbnail}")
|
||||
BLog.LOGE("DC_LI >>>> desc >>>> ${desc}")
|
||||
BLog.LOGE("DC_LI >>>> dateTiem >>>> ${dateTiem}")
|
||||
if (title.length > 0 && link.length > 0) {
|
||||
DcInside().apply {
|
||||
this.link = link
|
||||
this.title = title
|
||||
this.thumbnail = thumbnail
|
||||
this.desc = desc
|
||||
this.dateTiem = dateTiem
|
||||
}.apply {
|
||||
temp.add(this)
|
||||
}
|
||||
}
|
||||
}
|
||||
return temp
|
||||
}
|
||||
|
||||
class DcInside : RssDataItem {
|
||||
var link : String? = null
|
||||
var title : String? = null
|
||||
var thumbnail : String? = null
|
||||
var desc : String? = null
|
||||
var dateTiem : String? = null
|
||||
|
||||
val dateF = SimpleDateFormat("MM:dd")
|
||||
val timeF = SimpleDateFormat("hh:mm")
|
||||
override fun title(): String {
|
||||
return title ?:""
|
||||
}
|
||||
|
||||
override fun thumbnailUrl(): String {
|
||||
return thumbnail ?:""
|
||||
}
|
||||
|
||||
override fun originPage(): String {
|
||||
return link ?:""
|
||||
}
|
||||
|
||||
override fun description(): String {
|
||||
return desc ?: ""
|
||||
}
|
||||
|
||||
override fun pubDate(): Long {
|
||||
return if(dateTiem?.contains(":") == true) timeF.parse(dateTiem).time else dateF.parse(dateTiem).time
|
||||
}
|
||||
|
||||
override fun category(): RssDataType {
|
||||
return RssDataType.NewsFeed
|
||||
}
|
||||
|
||||
fun parseDcLi(dc_li : org.jsoup.nodes.Element) : ArrayList<RssDataItem>{
|
||||
var temp = arrayListOf<RssDataItem>()
|
||||
if (dc_li.html().contains("<ul class=>") && dc_li.html().contains("con_list img")) {
|
||||
dc_li.child(0).getElementsByTag("li").forEach {
|
||||
parseDcLi(it)
|
||||
}
|
||||
} else {
|
||||
var link = if (dc_li.getElementsByTag("a").size > 0) dc_li.getElementsByTag("a").get(0)
|
||||
.attr("href") else ""
|
||||
var title =
|
||||
if (dc_li.getElementsByClass("box besttxt").size > 0) dc_li.getElementsByClass("box besttxt")
|
||||
.get(0)
|
||||
.text() else if (dc_li.getElementsByClass("tit").size > 0) dc_li.getElementsByClass(
|
||||
"tit"
|
||||
).get(0).text() else ""
|
||||
var thumbnail =
|
||||
if (dc_li.getElementsByTag("img").size > 0) dc_li.getElementsByTag("img").get(0)
|
||||
.attr("src") else ""
|
||||
var desc =
|
||||
if (dc_li.getElementsByClass("box best_info").size > 0) dc_li.getElementsByClass("box best_info")
|
||||
.get(0).text() else ""
|
||||
var dateTiem =
|
||||
if (dc_li.getElementsByClass("time").size > 0) dc_li.getElementsByClass("time")
|
||||
.get(0).text() else ""
|
||||
link = link.replace("&","&")
|
||||
thumbnail = thumbnail.replace("&","&")
|
||||
BLog.LOGE("DC_LI >>>> link >>>> ${link}")
|
||||
BLog.LOGE("DC_LI >>>> title >>>> ${title}")
|
||||
BLog.LOGE("DC_LI >>>> thumbnail >>>> ${thumbnail}")
|
||||
BLog.LOGE("DC_LI >>>> desc >>>> ${desc}")
|
||||
BLog.LOGE("DC_LI >>>> dateTiem >>>> ${dateTiem}")
|
||||
if (title.length > 0 && link.length > 0) {
|
||||
DcInside().apply {
|
||||
this.link = link
|
||||
this.title = title
|
||||
this.thumbnail = thumbnail
|
||||
this.desc = desc
|
||||
this.dateTiem = dateTiem
|
||||
}.apply {
|
||||
temp.add(this)
|
||||
}
|
||||
}
|
||||
}
|
||||
return temp
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user