Python:データ転送オブジェクト

html-agility-pack ironpython python

質問

問題

私は顧客のWebページから解析/アクセスするために必要なさまざまなhtmlテーブルを用意していますが、そのデータはテーブル(列の長さ)によって異なる場合があります。

だから、私がやったことは、各テーブルのクラスを作成することでした。しかし、この作業はばかげていました。さまざまなデータを解析するために必要なテーブルがたくさんあるからです。

質問

PythonでDTOを実装する方法はありますか?転送するデータごとにクラスを作成する以外の方法はありますか?

クラス

class HoldItem():

    @property
    def none1(self):
        return self

    @property
    def none2(self):
        return self

    @property
    def item(self):
        return self

    @property
    def plant(self):
        return self

    @property
    def location(self):
        return self

    @property
    def material(self):
        return self

    @none1.setter
    def none1(self, value):
        self.none1 = value

インスタンスを生成する

class HoldItem():

    @property
    def none1(self):
        return self

    @property
    def none2(self):
        return self

    @property
    def item(self):
        return self

    @property
    def plant(self):
        return self

    @property
    def location(self):
        return self

    @property
    def material(self):
        return self

    @none1.setter
    def none1(self, value):
        self.none1 = value

SQLServerデータベースへの転送

class HoldItem():

    @property
    def none1(self):
        return self

    @property
    def none2(self):
        return self

    @property
    def item(self):
        return self

    @property
    def plant(self):
        return self

    @property
    def location(self):
        return self

    @property
    def material(self):
        return self

    @none1.setter
    def none1(self, value):
        self.none1 = value

事実

  • 私はIron Pythonを使用しています
  • 私はテーブルに情報を転送しています(SQL Server)
  • 私はHtmlAgilityPackを使ってhtmlテーブルを解析しています
  • 私はページをウェブでクロールしています

受け入れられた回答

これはあなたの目的に合ったようです


人気のある回答

Pythonは動的です。

__get____set__をオーバーライドし、クラス(インスタンス)の内部の辞書に 'フィールド値'を格納します。




ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ