私は、javascriptレスポンスから変数 'html'の内容を取得しようとしています。私はHTMLを抽出する正規表現モジュールを使用していますが、私は出力として 'なし'を得た。RegexモジュールPythonのコンテンツを抽出する
response = 'var port_statistics = (function(window, undefined) {
function loadScript(url, callback) {
var script = document.createElement('script');
script.async = true;
script.src = url;
var entry = document.getElementsByTagName('script')[0];
entry.parentNode.insertBefore(script, entry);
script.onload = script.onreadystatechange = function() {
var rdyState = script.readyState;
if (!rdyState || /complete|loaded/.test(script.readyState)) {
callback();
script.onload = null;
script.onreadystatechange = null;
}
};
}
function injectCss(css) {
var style = document.createElement('style');
style.type = 'text/css';
css = css.replace(/\}/g, "}\n");
if (style.styleSheet) {
style.styleSheet.cssText = css;
} else {
style.appendChild(document.createTextNode(css));
}
var entry = document.getElementsByTagName('script')[0];
entry.parentNode.insertBefore(style, entry);
}
var port_statistics = {};
var html = ["<div class=\"results_section\">", ", "
<div class='\"heading\"'> Overview </div> ",
#HERE THE CONTENT I AM TRYING TO GET
, "", "</div>", "", "", "</div>"].join('\n');
var div = document.createElement('div');
div.innerHTML = html;
var appendTo = document.getElementById('tag-port_statistics-widget');
appendTo.parentNode.insertBefore(div, appendTo);
loadScript('https://connect.url.com//jquery-1.11.1.min.js', function() {
portWidget.$(function() {
portWidget.$('tr.parent')
.click(function() {
portWidget.$(this).siblings('.child-' + this.id).fadeToggle('slow');
portWidget.$(this).find('.plus').toggle();
portWidget.$(this).find('.minus').toggle();
});
});
});
return port_statistics;
})(window);'
prog=re.search("var html = [.*?].join('\n');", response)
print(prog) #Output: None
また、私はこれを試してみました:
soup = BeautifulSoup(response, 'html.parser')
print(soup.prettify())
div_search = re.search('["<div class=\"results_section\">",(.*), "</div>"]', soup.prettify(), re.IGNORECASE)
print(div_search.group(0)) #Output: v
は、どのように私は、それが変数 'HTML' のコンテンツを取得するためにしてくださいできますか? 2番目の部分では、このコンテンツを使用して、HTMLタグの内容をBeautifulSoupで解析したいと考えています。
ありがとうございます。
EDIT
私はこれを取得しようとしています: ''
"<div class=\"results_section\">", ", "
<div class='\"heading\"'> Overview </div> ",
#HERE THE CONTENT I AM TRYING TO GET
, "", "</div>", "", "", "</div>"
出力します。 –
こんにちは@宏杰李、私は私の答えを編集しました。私は 'html'と呼ばれる変数の配列内のデータを取得しようとしています。お返事ありがとうございます! –