def parseListItemsPage(linkOnPage, ProcFuncArgs):
    resF = ProcFuncArgs[0]
    errF = ProcFuncArgs[1]
    USD_TO_RUB_RATE = float(sys.argv[1])

    j = MyStdLib.getJSON(linkOnPage, ["results_html"], errF)
    if not j:
        print("-1")
        return

    # getting name & price info for each item
    soup2 = BeautifulSoup(j["results_html"])

    prices = soup2.find_all("span", style="color:white")  # prices of items
    names = soup2.find_all("span", class_="market_listing_item_name")  # names of items

    if not prices or not names:
        errF.write(linkOnPage + ": some item's information is not found\n")
        print("-2")
        return

    if len(prices) != len(names):
        errF.write(linkOnPage + ": " + str(len(prices)) + " prices and " + str(len(names)) + " names\n")
        print("-3")
        return
    #

    # getting price and quantity values for each item
    for i, price in enumerate(prices):
        t = price.text
        price = MyStdLib.getTextInTheMiddle(t, "$", " USD")
        if price is None:
            price = MyStdLib.getTextAfter(t, "$")
            if price is None:
                errF.write(linkOnPage + ": price wasn't retrieved\n")
                print("-4")
                print(t)
                return
        prices[i] = float(price) * USD_TO_RUB_RATE

    for i, name in enumerate(names):
        names[i] = MyStdLib.getTextAfter(name.text, "Sticker | ")
        try:
            resF.write("{0}\t{1:6.2f}\n".format(names[i], prices[i]))
        except:
            print(names[i], prices[i])
def main():

    resF = open("E:\Res\stickScan.txt", "w")
    errF = open("E:\Res\stickScanErr.txt", "w")

    # sys.argv[1] = MyStdLib.calcExchanRate(errF)
    # print(sys.argv[1])

    start_t = time.perf_counter()

    url_sample = (
        "http://steamcommunity.com/market/search/render/?query=&start=0&count=10"
        + "&search_descriptions=0&sort_column=price&sort_dir=desc&appid=730"
        + "&category_730_ItemSet%5B%5D=any&category_730_ProPlayer%5B%5D=any"
        + "&category_730_TournamentTeam%5B%5D=any&category_730_Weapon%5B%5D=any"
        + "&category_730_Type%5B%5D=tag_CSGO_Tool_Sticker"
    )

    start_page = 1
    last_page = 1
    step = 10
    num_page = MyStdLib.calcNumPageUsingJSONResp(url_sample, step, errF)
    if num_page:
        last_page = num_page

    ps = MyStdLib.RandPageSwitcher(start_page, last_page, step)

    ProcFuncArgs = (resF, errF)
    ArgsT = (ps, url_sample, parseListItemsPage, ProcFuncArgs)
    ArgsDW = (1,)
    MyStdLib.startMltThrProcess(MyStdLib.processPages, ArgsT, ArgsDW)
    print(MyResponseGetting.failed_url_list.getFUList())

    failed_url_list_copy = MyResponseGetting.failed_url_list.reqFUListCopy()
    if failed_url_list_copy:
        line_ind = MyStdLib.LineInd(len(failed_url_list_copy))
        ArgsT = (failed_url_list_copy, line_ind, parseListItemsPage, ProcFuncArgs)
        MyStdLib.startMltThrProcess(MyStdLib.processURLList, ArgsT, ArgsDW)
        print(MyResponseGetting.failed_url_list.getFUList())

    end_t = time.perf_counter()
    print("\nPerf_time:{0:.2f}s".format(end_t - start_t))

    resF.close()
    errF.close()