MCPcopy
hub / github.com/codelucas/newspaper / replace_walk_left_right

Method replace_walk_left_right

newspaper/cleaners.py:150–178  ·  view source on GitHub ↗
(self, kid, kid_text,
                                replacement_text, nodes_to_remove)

Source from the content-addressed store, hash-verified

148 return self.parser.textToPara(replacement_text)
149
150 def replace_walk_left_right(self, kid, kid_text,
151 replacement_text, nodes_to_remove):
152 kid_text_node = kid
153 replace_text = self.tablines_replacements.replaceAll(kid_text)
154 if len(replace_text) > 1:
155 prev_node = self.parser.previousSibling(kid_text_node)
156 while prev_node is not None \
157 and self.parser.getTag(prev_node) == "a" \
158 and self.parser.getAttribute(
159 prev_node, 'grv-usedalready') != 'yes':
160 outer = " " + self.parser.outerHtml(prev_node) + " "
161 replacement_text.append(outer)
162 nodes_to_remove.append(prev_node)
163 self.parser.setAttribute(prev_node, attr='grv-usedalready',
164 value='yes')
165 prev_node = self.parser.previousSibling(prev_node)
166
167 replacement_text.append(replace_text)
168 next_node = self.parser.nextSibling(kid_text_node)
169 while next_node is not None \
170 and self.parser.getTag(next_node) == "a" \
171 and self.parser.getAttribute(
172 next_node, 'grv-usedalready') != 'yes':
173 outer = " " + self.parser.outerHtml(next_node) + " "
174 replacement_text.append(outer)
175 nodes_to_remove.append(next_node)
176 self.parser.setAttribute(next_node, attr='grv-usedalready',
177 value='yes')
178 next_node = self.parser.nextSibling(next_node)
179
180 def get_replacement_nodes(self, doc, div):
181 replacement_text = []

Callers 1

get_replacement_nodesMethod · 0.95

Calls 8

previousSiblingMethod · 0.80
getTagMethod · 0.80
getAttributeMethod · 0.80
outerHtmlMethod · 0.80
appendMethod · 0.80
setAttributeMethod · 0.80
nextSiblingMethod · 0.80
replaceAllMethod · 0.45

Tested by

no test coverage detected