静的ページのXpathを取得する簡単な方法

この記事は(新人インを調べるために、XPathの使用)例えば、小さなテーブルスターファンド証券を抽出
インポート
要求を から lxmlのインポートetree インポートCSV DEF #は、ページがテキストを取得します:getHtml(URL、ヘッダ) 試し REQ = requests.getを(URL ) req.raise_for_status() req.encoding = ' GB18030 ' HTML = req.text リターンHTML を除く印刷' エラー' DEFのgetContent(HTML):取得するテーブルの下で#すべてのものが、タイトルが含まれていません。 HTML = etree.HTML(HTML) = html.xpath(' // * [@ ID = "DataListコントロール"] / TR //テキスト()' tobady =名[0] TD = [] のための I レンジ(LEN(名)): td.append(名前[I]) TD1 = TD [I:I + 8]を。ための I における範囲(0、LEN(TD),. 8 )] 8で切断#ライン時間後の記憶CSVが容易に 戻すTD1 DEF として保存#CSVファイル:save_dataを(FNAME、TD1) F =オープン(FNAME、' W '、エンコーディングを= 'GB18030 'NEWLINE = "" ライター = csv.writer(F) writer.writerow((' ファンドコード'' ファンド名'' NAV '' 累積ネット'' 日々の売上高成長'' 日々の成長率'' 購入'" 償還' )) のための I TD1: writer.writerow(I) DEF メイン(): URL = ' "http://quote.stockstar.com/fund/mixed.shtml FNAME = ' E:/shuju/t.csv ' ヘッダ = { ' のUser-Agent '" Mozillaの/ 5.0(Windows NTの6.1; WOW64)のAppleWebKit / 537.36 (KHTML、ヤモリ等)クローム/ 55.0.2883.87サファリ/ 537.36 ' } save_data(FNAME、のgetContent(gethtml(URL、ヘッダー = ヘッダ)))もし__name__ == ' __main__ ' メイン()

 

おすすめ

転載: www.cnblogs.com/zsf-note/p/11576604.html