MCPcopy Create free account
hub / github.com/C3ting/ARL / build_html_report

Method build_html_report

app/tasks/github.py:154–206  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

152 return repo_map
153
154 def build_html_report(self):
155 repo_map = self.build_repo_map()
156 repo_cnt = 0
157 html = "<br/><br/> <div> 搜索: {} 仓库数:{} 结果数: {} </div>".format(self.keyword,
158 len(repo_map.keys()), len(self.new_results))
159 for repo_name in repo_map:
160 repo_cnt += 1
161 # 为了较少长度,超过 5 个仓库就跳过
162 if repo_cnt > 5:
163 break
164
165 start_div = '<br/><br/><br/><div>#{} <a href="https://github.com/{}"> {} </a> 结果数:{}</div><br/>\n'.format(
166 repo_cnt, repo_name, repo_name, len(repo_map[repo_name]))
167 table_start = ''&#x27;<table style="border-collapse: collapse;">
168 <thead>
169 <tr>
170 <th style="border: 0.5pt solid; padding:14px;">编号</th>
171 <th style="border: 0.5pt solid; padding:14px;">文件名</th>
172 <th style="border: 0.5pt solid; padding:14px;">代码</th>
173 <th style="border: 0.5pt solid; padding:14px;">Commit 时间</th>
174 </tr>
175 </thead>
176 <tbody>\n''&#x27;
177 html += start_div
178 html += table_start
179
180 style = 'style="border: 0.5pt solid; font-size: 14px; padding:14px"'
181 tr_cnt = 0
182 for item in repo_map[repo_name]:
183 tr_cnt += 1
184 code_content = item.human_content(self.keyword).replace('>', "&#x3e;").replace('<', "&#x3c;")
185 code_content = code_content[:2000]
186 tr_tag = '<tr>' \
187 '<td {}> {} </td>' \
188 '<td {}> <div style="width: 300px"> <a href="{}"> {} </a> </div> </td>' \
189 '<td {}> <pre style="max-width: 600px; overflow: auto; max-height: 600px;">{}</pre></td>' \
190 '<td {}> {} </td>' \
191 '</tr>\n'.format(
192 style, tr_cnt, style, item.html_url, item.path,
193 style, code_content,
194 style, item.commit_date)
195
196 html += tr_tag
197 if tr_cnt > 10:
198 break
199
200 table_end = '</tbody></table>'
201 end_div = "</div>"
202
203 html += table_end
204 html += end_div
205
206 return html
207
208 def build_markdown_report(self):
209 repo_map = self.build_repo_map()

Callers 1

push_emailMethod · 0.95

Calls 2

build_repo_mapMethod · 0.95
human_contentMethod · 0.45

Tested by

no test coverage detected