Skip to content

Commit

Permalink
[QwenBlogBridge] Add bridge (#4353)
Browse files Browse the repository at this point in the history
  • Loading branch information
SqrtMinusOne authored Dec 2, 2024
1 parent 6a81fc0 commit d956471
Showing 1 changed file with 49 additions and 0 deletions.
49 changes: 49 additions & 0 deletions bridges/QwenBlogBridge.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
<?php

class QwenBlogBridge extends FeedExpander
{
const NAME = 'Qwen Blog';
const URI = 'https://qwenlm.github.io/blog/';
const DESCRIPTION = 'Fetch the latest items from Qwen';
const MAINTAINER = 'sqrtminusone';
const CACHE_TIMEOUT = 3600;

const PARAMETERS = [
'' => [
'limit' => [
'name' => 'Limit',
'type' => 'number',
'required' => true,
'defaultValue' => 10
],
]
];

public function collectData()
{
$this->collectExpandableDatas(self::URI . 'index.xml', $this->getInput('limit'));
}

protected function parseItem(array $item)
{
$dom = getSimpleHTMLDOM($item['uri']);
$content = $dom->find('div.post-content', 0);
if ($content == null) {
return $item;
}

// Fix code blocks
foreach ($dom->find('pre.chroma') as $code_block) {
// Somehow there are tags in <pre>??
$code_block_html = str_get_html($code_block->plaintext);
$code = '';
foreach ($code_block_html->find('span.line') as $line) {
$code .= $line->plaintext . "\n";
}
$code_block->outertext = '<pre>' . $code . '</pre>';
}

$item['content'] = $content;
return $item;
}
}

0 comments on commit d956471

Please sign in to comment.