爬行输出——连接两个变量

Crawling output - connecting two variables

我想知道如何组合两个变量。

我的目标是它应该打印出 partnerID = 2 如果我正在爬行 7236 代表罗马和 partnerID = 3 如果我正在爬行例如7665代表柏林。

这是我的代码:

RegionID = {7236: 2, 7665: 3}

for reg in RegionID:
    page = 0
    while page <= max_pages:
        page += 1
        r = requests.get("http://www.spasso.com/affiliatesearch.aspx?&regionid=" + str(reg) + "&pid=" + str(page))
        soup = BeautifulSoup(r.content)

        g_data = soup.find_all("div", {"class": "gridHeadOuter productInfoOuter"})

        for item in g_data:
            Header = item.find_all("div", {"class": "offerInto"})
            Header_final = (Header[0].contents[0].text.strip())

        partner_ID = 2

        print("Header: " + Header_final + " | " + "PartnerID: " + partner_ID) 

这是我从上面的代码得到的输出:

Header: 1-hour Paris Sightseeing Cruise | PartnerID: 3

Header: Rome DC Open Top Hop-On Hop-Off | PartnerID: 3

理想情况下输出应该是这样的:

Header: 1-hour Paris Sightseeing Cruise | PartnerID: 3

Header: Rome DC Open Top Hop-On Hop-Off | PartnerID: 2

我不想使用 if...else 语句,因为我会有很多 RegionIDs,我正在寻找更有效的解决方案。

更新

修改了我的代码,因为它有一些错误。按照建议创建了一个 dic,但现在仍然知道如何在不每次都使用 if...else 语句

的情况下完成它

我修改了上面的代码以使其正常工作。这是一个示例,说明如何使用 dictionary 获取 PartnerID.

RegionIDArray = [7236, 7665]
dict = {7236: 2, 7665: 3} #{'Rome': 3, 'Paris': 2}
for RegionID in RegionIDArray:
    for page in range(1,2):
        url = "http://www.isango.de/affiliatesearch.aspx?&regionid=" + str(RegionID) + "&pid=" + str(page)
        html = urllib.request.urlopen(url).read()
        soup = BeautifulSoup(html)

        g_data = soup.find_all("div", {"class": "gridHeadOuter productInfoOuter"})
        for item in g_data:
            Header = item.find_all("div", {"class": "offerInto"})
            Header_final = (Header[0].contents[0].text.strip())

        print("Header: " + Header_final + " | " + "PartnerID: " + str(dict[RegionID]))

输出为:

Header: Washington Odyssey Lunch Cruise | PartnerID: 2
Header: Audio Tour, Candlelit Dinner and Concert at Charlottenburg Palace, Berlin | PartnerID: 3